我想知道是否可以在另一个工作簿中捕捉事件。
宏将打开一个工作簿供用户使用,我希望能够在其选择更改事件上运行另一个宏。不可以,代码不能存储在刚刚打开的工作簿中。
除了以编程方式将代码添加到打开的工作簿中之外,还有其他方法吗?ThisWorkbook
模块?
这种方式不安全、不稳定,而且通常很糟糕。
您所需要做的就是抓住一个WithEvents
使用事件处理程序引用类模块中打开的工作簿。例如:
'In ThisWorkbook
Option Explicit
Private WithEvents other As Worksheet
Private Sub Example()
Dim wb As Workbook
Set wb = Workbooks.Open("C:\Dev\other.xlsx")
Set other = wb.Sheets("Sheet1")
End Sub
Private Sub other_SelectionChange(ByVal Target As Range)
Debug.Print Target.Address
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)