VBA非常新,并尝试编写一个循环内有循环的宏。我希望整个代码运行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
我的猜测是这是一个相当简单的修复,但我不确定,也无法弄清楚其他问题。
答案 0 :(得分:3)
乍一看问题是你无法使用计数器" i"两个循环。将其中一个计数器更改为" j"以及内循环中的所有引用到" j"同样。我不确定是否还有其他问题但是我突然想到了。