我试图在Office 365中编写VBA代码以寻求目标。我已经使用目标搜索公式为单个单元格记录了代码。如何使其在特定范围内起作用?
Sub ddpdio()
'
' ddpdio Macro
'
' Keyboard Shortcut: Ctrl+Shift+Z
'
Application.CutCopyMode = False
Application.CutCopyMode = False
Range("J6").GoalSeek Goal:=5.5, ChangingCell:=Range("H6")
Range("H19").Select
End Sub
在这里,我可以在更改单元格J6
的单元格H6
中获得所需的值。但是我需要通过更改范围J6:J18
的值来为范围H6:H18
运行VBA。但是,如果我将J6
替换为J6:J18
,并将H6
替换为H6:H18
,则会收到参考错误消息。
答案 0 :(得分:0)
如果列J中的每个单元格仅依赖于H列中的一个单元格,则可以执行一个循环来实现这一点,在每个循环中运行一个GoalSeek(此处我将目标设置为I
,但可以任何东西):
Sub Test()
Dim I As Long
For I = 6 To 18
Cells(I, 10).GoalSeek Goal:=I, ChangingCell:=Cells(I, 8)
Next I
End Sub