在Excel VBA中嵌套复制/粘贴循环

VBA非常新,并试图编写一个循环内有一个循环的macros。 我想整个代码运行30次

For i = 1 To 30 Worksheets("Salary Extract (SPs Only)").Range("B" & (1 + i)).Copy Worksheets("Pitcher Matchup Analysis").Paste Destination = Worksheets("Pitcher Matchup Analysis").Range("B9") For i = 1 To 9 Worksheets("Pitcher Matchup Analysis").Range("B" & (38 + i)).Copy Worksheets("Batter Matchup Analysis").Paste Destination = Worksheets("Batter Matchup Analysis").Range("B1") Worksheets("Batter Matchup Analysis").Range("B88:AC88").Copy Worksheets("Pitcher Matchup Analysis").Range("C" & (38 + i) & "AD" & (38 + i)).PasteSpecial xlPasteValues Next i Worksheets("Pitcher Matchup Analysis").Range("A71:R71").Copy Worksheets("Pitcher Comparison").Range("A" & (1 + i) & "R" & (1 + i)).PasteSpecial xlPasteValues Next i End Sub 

在每个循环中,我希望这个块循环9次

 For i = 1 To 9 Worksheets("Pitcher Matchup Analysis").Range("B" & (38 + i)).Copy Worksheets("Batter Matchup Analysis").Paste Destination = Worksheets("Batter Matchup Analysis").Range("B1") Worksheets("Batter Matchup Analysis").Range("B88:AC88").Copy Worksheets("Pitcher Matchup Analysis").Range("C" & (38 + i) & "AD" & (38 + i)).PasteSpecial xlPasteValues Next i 

我的猜测是这是一个相当简单的修复,但我不知道,不能看出其他问题。

乍一看问题是,你不能使用柜台“我”两个循环。 将其中一个计数器更改为“j”,将内部循环中的所有引用更改为“j”。 我不确定是否还有其他的问题,但是那个人跳到我身上。