小编Joh*_*ith的帖子

使用Python将宏注入Spreadsheets

我有一个宏,我想要使用一堆现有的电子表格.唯一的问题是,有太多的电子表格,手动操作太费时间了!

我编写了一个Python脚本来使用pyWin32访问所需的文件,但我似乎无法找到一种方法来使用它来添加宏.

这里有一个类似的问题给出了这个答案(它不是Python,但看起来它仍然使用COM),但我的COM对象似乎没有一个名为VBProject的成员:

Set objExcel = CreateObject("Excel.Application") 
objExcel.Visible = True 
objExcel.DisplayAlerts = False 
Set  objWorkbook = objExcel.Workbooks.Open("C:\scripts\test.xls") 
   Set xlmodule = objworkbook.VBProject.VBComponents.Add(1)  
   strCode = _ 
   "sub test()" & vbCr & _ 
   "   msgbox ""Inside the macro"" " & vbCr & _ 
   "end sub" 
   xlmodule.CodeModule.AddFromString strCode 
objWorkbook.SaveAs "c:\scripts\test.xls" 
objExcel.Quit 
Run Code Online (Sandbox Code Playgroud)

编辑:链接到引用的类似问题:将Excel VBA代码注入并执行到从外部源接收的电子表格中

我也忘了提到虽然这不是Python,但我希望通过COM对象可以使用类似的对象成员.

python excel vba excel-vba vbe

15
推荐指数
2
解决办法
9119
查看次数

标签 统计

excel ×1

excel-vba ×1

python ×1

vba ×1

vbe ×1