如何停止错误“91”:对象variables或未设置块variables

嗨,我是新来的VBA,所以道歉,如果这是一个非常简单的修复。

下面的代码不断返回Excel错误'91':对象variables或未设置块variables。

Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("$B$7")) = Worksheets("Team Amendment Tables").Range("$C$7") Then Application.Run "TargetUpdate1" End If End Sub 

有关如何解决这个问题的任何想法? 上下文:工作表7中的下拉列表触发macros:TargetUpdate1一次没有循环。

如果B7以外的单元格发生更改,则您的Intersect将不会返回Nothing ,因此请首先进行testing:

 Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("$B$7")) Is Nothing Then If Range("$B$7").Value = Worksheets("Sheet1").Range("$C$7").Value Then Application.Run "TargetUpdate1" End If End If End Sub