我正在写进入不同的床单和有词“目标文件”和“VAR”行执行GoalSeek
代码。完成我第一片材之后,代码移动到所述第二片材,并促使error 1004
。它说我对Do ... Loop
函数引用不再有效。为什么会这样?GoalSeek内循环 - 运行时错误1004:引用无效
Sub GoalSeek()
Dim FirstAddress As String
Dim SecondAddress As String
Dim Arr As Variant
Dim Rng As Range
Dim Rng2 As Range
Dim y As Long
Dim i As Long
Arr = Array("SheetA", "SheetB")
For i = LBound(Arr) To UBound(Arr)
With Worksheets(Arr(i)).Range("A1:BZ500")
Set Rng = .Find("Obj", LookIn:=xlValues)
If Not Rng Is Nothing Then
FirstAddress = Rng.Address
Set Rng2 = .Find("Var", LookIn:=xlValues)
If Not Rng2 Is Nothing Then
SecondAddress = Rng2.Address
'Error Occurred Here
Do
Rng.Offset(0, y + 1).GoalSeek Goal:=0, ChangingCell:=Rng2.Offset(0, y + 1)
y = y + 1
Loop Until y = 12
End If
End If
End With
Next i
End Sub
意味着有一个异常......很多可能的原因。即goalseeking范围内没有一个公式,其计算公式并不依赖于'ChangingCell',后者是空的,公式过于复杂,计算未能找到解决办法,等等...... –