0
Quel serait un bon moyen d'incrémenter chacune de mes plages, par exemple j'ai besoin de x pour copier la plage B11: à G20 et collez-le à C10 pour la deuxième boucle. Chaque variable a des incréments différents.VBA quelle est la meilleure façon d'incrémenter en boucle
Im en utilisant Excel 2010
Toute aide est appréciée parce que je suis avec horreur Visual Basic.
Dim i As Range, j As Range, k As Range
Dim x As Range, y As Range
Dim Num As Integer
Num = 94
Set x = Sheets("Sum Data").Range("B1:G10")
Set j = Sheets("PNA Physical Needs Summary Data").Range("C4")
Set i = Sheets("PNA Physical Needs Summary Data").Range("B4:B9")
Set k = Sheets("Sum Data").Range("A1")
Set p = Sheets("PNA Physical Needs Summary Data").Range("P3:P8")
Set e = Sheets("PNA Physical Needs Summary Data").Range("A4:A9")
Do
Sheets("Sum Data").Select
x.Copy
Sheets("PNA Physical Needs Summary Data").Select
j.Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
p.Select
Selection.Copy
i.Select
ActiveSheet.Paste
Sheets("Sum Data").Select
k.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("PNA Physical Needs Summary Data").Select
e.Activate
ActiveSheet.Paste
Num = Num - 1
Loop Until Num = 0
Ok j'ai changé la copie et la pâte, je essayé Offset dans la boucle mais il reste coincé sur certaines pages et ne s'incrémente pas. Faites x.Copy Sheets ("PNA physique Résumé des besoins de données") Sélectionnez j.Select Selection.PasteSpecial Coller:. = XlPasteAll, Opération: = xlNone, SkipBlanks: = _ Faux, Transposer: = True p .copy i k.Copy e Nb = Nb - 1 x = x.Offset (10, 0) j = j.Offset (5, 0) i = i.Offset (5, 0) k = k.Offset (10, 0) e = e.Offset (5, 0) – user1139384
Que voulez-vous dire par "coincé"? Je remarque que vous n'utilisez pas "Set" lorsque vous déplacez les plages: besoin de cela. –