我在VBA中嵌套一个For Each循环时遇到了一些麻烦。
我的第一个For Each语句运行良好,但是我无法添加第二个。我收到一个编译错误:对于已在使用的控制变量。它一定是循环的嵌套。
我正在尝试做的事情:
在Sheet1范围J13:J15上,我的时间长度可变 在Sheet1范围K13:K15上,我的上报百分比是可变的 在Sheet1单元格J39上,我有起价
对于每个选项,我希望能够复制并粘贴时间长度和提升百分比,复制起始价格,然后目标价格,以使我的回报增量= 0。
一切似乎都可以正常工作,问题在于将Escalation%添加到循环中。
感谢任何帮助。
Sub GSeek()
Application.ScreenUpdating = False
Dim rng As Range
Dim cell As Range
Dim rng2 As Range
Dim cell2 As Range
Dim c As Integer
Dim i As Integer
Dim k As Integer
Dim j As Integer
Dim m As Integer
m = 20
c = 13
i = 1
k = 1
j = 12
Set rng = Worksheets("Sheet1").Range("J13:J15")
Set rng2 = Worksheets("Sheet1").Range("K13:K15")
'Copy PPA term
For Each cell In rng.Rows
rng.Rows(i).Copy
Worksheets("Sheet2").Range("H18").PasteSpecial Paste:=xlPasteValues
i = i + 1
'Copy PPA Escalation
For Each cell2 In rng2.Rows
rng2.Rows(k).Copy
Worksheets("Sheet2").Range("H40").PasteSpecial Paste:=xlPasteValues
k = k + 1
'Paste Assumed PPA Start Price
With Worksheets("Sheet1")
.Range("J39").Copy
Worksheets("Sheet2").Range("G40").PasteSpecial Paste:=xlPasteValues
End With
'Goal Seek IRR
With Worksheets("Sheet2")
.Range("H153").GoalSeek Goal:=0, ChangingCell:=.Range("G40")
'Copy PPA Bills to Sheet3
.Range("J40:AH40").Copy
Worksheets("Sheet3").Cells(c + 8, 10).PasteSpecial Paste:=xlPasteValues
c = c + 8
'Copy PPA Rate to Sheet3
.Range("G40").Copy
Worksheets("Sheet3").Cells(j + 8, 10).PasteSpecial Paste:=xlPasteValues
j = j + 8
'Copy PPA Escalation to Sheet3
.Range("H40").Copy
Worksheets("Sheet3").Cells(m, 8).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
m = m + 8
End With
Exit For
Exit For
Next cell2
Next cell
End Sub