excel - 多个外部工作簿的 Worksheet_Change 事件
问题描述
我有一个类模块,它充当外部工作簿的 Worksheet_Change 事件。我正在修改我的项目,当前设置只允许一个外部工作簿 sheet_change 事件。但是,我会喜欢此事件以侦听多个工作簿上的更改。
工作簿的数量直到代码中途才知道,因此我无法为每个工作簿创建预定数量的类。
模块Functions
:
Dim oWb2 As New UpdaterUnkowns
Public Function
'Code...
Set oWb2.Workbook = newfile
End Function
类模块UpdaterUnknowns
:
Public WithEvents m_wb As Workbook
Public CellVal As String
Public Property Set Workbook(wb As Workbook)
Set m_wb = wb
End Property
Public Property Get Workbook() As Workbook
Set Workbook = m_wb
End Property
Public Sub m_wb_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Code...
End Sub
Set oWb2.Workbook = newfile
设置类模块的工作簿。我可以将多个工作簿传递给活动吗?
解决方案
要处理每个打开的工作簿,您可以执行以下操作:
Dim UU_collection As Collection
sub mysub()
Set uu_collection = New Collection
Dim wb As Workbook
For Each wb In Application.Workbooks
Dim oWb2 As UpdaterUnknowns
Set oWb2 = New UpdaterUnknowns
Set oWb2.Workbook = wb
uu_collection.Add oWb2
Next wb
End Sub
推荐阅读
- node.js - 我的快速路由在不同的不和谐服务器上不起作用
- azure - Azure Devops 可以免费更改用户吗?
- android - Playstore 锁屏打开时 inappreview 触发器
- bash - 为什么 C 文件名可以在编写 bash 脚本后立即保存在变量中?
- c++ - OBS 如何将某物区分为 3rd 方覆盖?
- reactjs - 来自后端(API)的列不适用于 useState
- python - 在属性/方法 Django 中访问自引用对象
- linux - 如果第一个 bash 命令的输出输出零行,如何执行第二个 bash 命令?
- mysql - HAVING COUNT 语句
- android - JDK 1.8.x 的要求检查失败!检测到的版本:13.0.1