自动目标寻求超过细胞范围

时间:2013-04-26 15:34:33

标签: excel-vba range automatic-properties vba excel

当工作表中的任何单元格发生更改时,我想在多行中应用目标搜索。我想将这个从第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

1 个答案:

答案 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