各位高手,请教下VBA的一个小问题.

2025-05-19 20:17:20
推荐回答(2个)
回答1:

直接用单元格事件完成呀
代码如下
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then '指定A1单元格修改时发生事件
Call 你的要运行的宏
End If
End Sub

回答2:

如果照你的说法,手工修改的话可以实现,说明代码没有问题,只是代码位置不对,要用重算公式事件。就是将Private Sub Worksheet_Change(ByVal Target As Range)改为Private Sub Worksheet_Calculate()。你要检测的单元格在一个全局变量里,每次事件进行一次比较,如果有变化就执行你需要的过程。