我正试图找到一种使用"Workbook_SheetChange"的方法,其中代码写在ThisWorkbook代码中或单独的模块中,但在另一张工作表上工作。图纸是由另一个宏创建的,数据是单独上传和处理的,我不知道将创建的图纸数量。有没有一种方法可以使用"Workbook_SheetChange":-当代码写在单独的模块中时-或者在创建新工作表时自动复制代码。
我同意这是向新excel工作表动态添加代码的重复,但可能仍需要一些解释。
在VBA中,每次更改工作表时都会触发Workbook_SheetChange事件。因此,如果你想运行两个不同的过程,你可以做一些类似的事情:
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Source As Range)
If ActiveSheet.Name = "Sheet1" then
'Do one thing
Else
'Do another
End If
End Sub
这比"写代码就写代码"要好得多
现在,如果你正在创建一个新的工作簿,它会变得更难——如果这是你需要的,请告诉我们。