是否有一种简单的方法可以让Excel在更改单元格时自动执行宏?
有问题的细胞将在 Worksheet("BigBoard").Range("D2")
我认为简单的谷歌查询被证明是更复杂的 - 每个样本涉及交叉(无论是那些)或颜色格式或任何其他数量似乎无关紧要的事情.
Pet*_*ert 39
是的,这可以通过使用工作表事件来实现:
在Visual Basic编辑器中,双击左上角树中工作表的名称,打开您感兴趣的工作表(即"BigBoard").将以下代码放在模块中:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Me.Range("D2")) Is Nothing Then Exit Sub
Application.EnableEvents = False 'to prevent endless loop
On Error Goto Finalize 'to re-enable the events
MsgBox "You changed THE CELL!"
End If
Finalize:
Application.EnableEvents = True
End Sub
Run Code Online (Sandbox Code Playgroud)
use*_*261 20
另一种选择是
Private Sub Worksheet_Change(ByVal Target As Range)
IF Target.Address = "$D$2" Then
MsgBox("Cell D2 Has Changed.")
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
我相信这会占用更少的资源Intersect,如果您的工作表发生了很大变化,这将会有所帮助.
| 归档时间: |
|
| 查看次数: |
167703 次 |
| 最近记录: |