2010-06-02 8 views
0

J'essaye de Transposer toute la colonne "B", mais je veux sauter une ligne puis attraper les 4 suivantes et les coller dans la même colonne. Comment est-ce que je peux faire cette boucle toute la colonne "B" sautant chaque 5ème ligne et changer la gamme à la cellule ouverte suivante ou "Range" automatiquement sans taper chacun individuellement?Comment puis-je transposer avec les limites de 10 000 lignes d'Excel?

Range("B12:B16").Select 
    Selection.Copy 
    Sheets("Sheet2").Select 
    Range("A2").Select 
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ 
     False, Transpose:=True 
    Range("B18:B22").Select 
    Selection.Copy 
    Sheets("Sheet2").Select 
    Range("A3").Select 
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ 
     False, Transpose:=True 
    Range("B24:B28").Select 
    Selection.Copy 
    Sheets("Sheet2").Select 
    Range("A4").Select 
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ 
     False, Transpose:=True 
+0

Cette question peut obtenir de meilleures réponses sur un site à http://superuser.com dédié à l'utilisation de logiciels comme Excel –

+0

Merci, je le ferai. – user356589

+0

Si vous cherchez une solution VBA, je crois que stackoverflow.com est bien aussi :) – Marek

Répondre

1

vous pouvez essayer ce code, je l'ai testé sur Excel 2010 sur plus de 10k cellules:

Sub SkipOnFive() 

Dim inRow As Integer 'number of row in source worksheet 
Dim outRow As Integer 'number of row in output worksheet 
Dim outCol As Integer 'number of column in output worksheet 

Dim strTemp As String 

inRow = 1 'this is your start row on input sheet 
outRow = 1 ' this is your start row on output sheet 

Do 
    For outCol = 1 To 4 
     strTemp = Cells(inRow, 2).Value 
     Worksheets(2).Cells(outRow, outCol).Value = strTemp 
     inRow = inRow + 1 
    Next 
    outRow = outRow + 1 
    inRow = inRow + 1 
Loop While strTemp <> vbNullString 'vbnullstring is kind of empty string, but it does not use any resources to create 
End Sub 
+0

Merci, je vais essayer et vous faire savoir ... – user356589

Questions connexes