当工作表中的任何单元格发生更改时,我想在多行中应用目标搜索。我想将这个从第7行应用到第11行。我遇到的第一个问题是每次运行时excel都会崩溃。我刚刚开始学习VBA,所以任何帮助都是非常有用的。谢谢!
我的代码如下:
Option Explicit
Private Sub Worksheet_Calculate()
CheckGoalSeek
End Sub
Private Sub CheckGoalSeek()
Range("T7").GoalSeek Goal:=0, ChangingCell:=Range("V7")
End Sub
答案 0 :(得分:1)
您似乎触发了无限循环:工作表计算 - >目标寻求计算 - >工作表计算 - > ......
一种选择是更改触发目标搜索的事件。
我会推荐Worksheet_Change事件。事件代码将是相同的,除了子声明,它将是Private Sub Worksheet_Change(ByVal Target As Range)
。
一个简单的For
循环将在不同的行上执行目标搜索:
Option Explicit
Private Sub CheckGoalSeek()
Dim i as Long
For i = 7 to 11
Range("T"& i).GoalSeek Goal:=0, ChangingCell:=Range("V"& i)
Next
End Sub