2010-12-03 14 views
1

J'ai 5 colonnes et 100 lignes d'information que je dois mettre dans une seule rangée horizontale.Je veux transposer une boucle de 5 colonnes et 100 lignes en 1 ligne

par exemple:

rouge bleu vert jaune rouge vert bleu jaune bleu vert jaune rouge ect ...

à

rouge vert bleu jaune rouge vert bleu jaune rouge vert bleu jaune ... ect

aide s'il vous plaît je ne sais pas comment créer une macro afin d'être aussi basique que possible! merci

+0

L'exemple et la sortie sont les mêmes dans votre question (à cause du formatage ici). Pouvez-vous éditer votre réponse. Pour ajouter une nouvelle ligne, ajoutez ** deux espaces **. Aussi, pour clarifier votre question, vous avez ** une feuille Excel ** avec 5 colonnes et 100 lignes? – gideon

+0

Typiquement, Excel ne dispose que de 256 colonnes, donc mettre 5 colonnes de 100 lignes dans une seule ligne horizontale est génératrice de problèmes. Qu'essayez-vous exactement d'accomplir? –

Répondre

0

Voici un code qui transpose sur la même feuille. Changez les lignes et la colonne comme requis. J'espère que vous savez comment ouvrir l'éditeur VBA et exécuter la macro.

Sub transpose() 
Dim row 
Dim targetRow 
Dim targetColumn 
Dim column 
Dim columnMin 
Dim columnMax 
Dim rowMin 
Dim rowMax 
Dim tmp 

rowMin = 1 
rowMax = 2 
columnMin = 1 
columnMax = 5 

targetColumn = 7 
targetRow = 1 

row = rowMin 
While row <= rowMax 

    column = columnMin 

    While column <= columnMax 

     Cells(row, column).Select 
     tmp = ActiveCell.Value 
     Cells(targetRow, targetColumn).Select 
     ActiveCell.Value = tmp 
     targetRow = targetRow + 1 
     column = column + 1 

    Wend 

    row = row + 1 

Wend 

End Sub 

Ce qui fait est boucles sur chaque ligne qui est nécessaire. Commencez à la première colonne requise. Boucle sur chaque colonne de cette ligne, récupère la valeur et place la ligne et la colonne cible. Ensuite, incrémentez la ligne cible.

J'espère qu'il y a assez d'exemples de code ici que vous pouvez faire des modifications vous-même pour résoudre votre problème spécifique.

'éditer Damn. Juste remarqué cette question a demandé 1 ligne, mais cela fait 1 colonne. Ne devrait pas être trop difficile à changer.