VBA什么是循环增量的最佳途径

例如,我需要x将范围B11:复制到G20,然后将其粘贴到C10作为第二个循环,这将是一个很好的方法来增加每个范围。 每个variables有不同的增量。

我使用Excel 2010

任何帮助表示赞赏,因为我与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 

你可以使用Offset()。 例如:

 Set x = x.Offset(rowOffset, colOffset) 

另外 – 你不需要select复制范围:

 p.Copy i 

是相同的:

 p.Select Selection.Copy i.Select ActiveSheet.Paste