我正在寻找的是在每个创建的excel文件上运行auto_open()函数。有没有办法实现这个目标?
答案 0 :(得分:1)
您需要一个包含要运行的代码的单独工作簿 - 例如,您的个人宏工作簿。在该工作簿的Thisworkbook模块中,添加以下内容:
Private WithEvents appExcel As Excel.Application
Private Sub Workbook_Open()
Set appExcel = Application
End Sub
Private Sub appExcel_WorkbookOpen(ByVal Wb As Workbook)
Call Macro1
End Sub
其中Macro1是您要为每个工作簿运行的代码。
答案 1 :(得分:1)
?Application.StartupPath
以查找您的XLSTART
文件夹。 Book.xlt
的模板文件或类似内容。 Auto_Open()
事件放在该模板中,然后将其另存为XLSTART
文件夹中的模板。确保它实际保存在正确的位置并覆盖原始模板。注意:您可能必须将模板文件类型更改为.xltm
并删除原始.xlt
版本,因为其中将包含宏。Auto_Open()
事件现在应该出现在您创建的每个新文件中。 Automatically open a workbook template or worksheet template when you start Excel