好的,我不确定这是否容易实现,但我会尝试。
如果单元格发生更改,我使用此子程序执行一些宏:
Private Sub Worksheet_Calculate()
Dim target As Range
Set target = Range("b4")
If Not Intersect(target, Range("b4")) Is Nothing Then
Call init
End If
End Sub
这工作正常,但我有一点问题。
单元格B4
,如上面的单元格更改子中所引用,其值由命名范围确定,该命名范围是动态的,并且包含另一个工作表上的值列表。我使用数据验证工具制作B4
一个包含命名范围内容的下拉列表。
我有另一个宏,其目的是更新此列表。它的作用是清除当前列表,查询数据库并将一堆值输出到范围内。问题在于,当这个宏运行时,它会导致 的值发生B4
变化(因为B4
引用了范围内的值)。这反过来导致我的“单元格更改”宏运行抛出错误。
有没有办法在我更新它引用的列表时阻止“单元格更改”宏运行?
希望这个问题有意义。