我有很多 excel 文件(大约 200 个),我必须在其中添加 VBA 代码(在Workbook_Open()方法中)。
我想自动化,有没有办法以编程方式将 VBA 代码添加到 Excel 工作表?
也许用python的win32包?
为此,您不需要 python。
逻辑
.CreateEventProc写入相关的代码段。更多关于 .CreateEventProc 这里基本要求
您需要启用对 Visual Basic 项目的访问。
Trust access to the VBA project object model以启用对 Visual Basic 项目的访问。代码
Option Explicit
Sub Sample()
Dim VBP As Object, VBC As Object, CM As Object
Dim wb As Workbook
Set wb = Workbooks.Open("C:\Users\routs\Desktop\Sample.xlsm")
Set VBP = wb.VBProject
Set VBC = VBP.VBComponents("ThisWorkbook")
Set CM = VBC.CodeModule
With VBC.CodeModule
.InsertLines Line:=.CreateEventProc("Open", "Workbook") + 1, _
String:=vbCrLf & _
" Debug.Print ""This is a sample text"""
End With
'wb.Close (True)
End Sub
Run Code Online (Sandbox Code Playgroud)