小编Ari*_*Yxm的帖子

使用 python 运行 Word VBA 宏

我正在尝试使用 python 调用 Word 宏。我试图采用用于通过python运行Excel vba宏的逻辑(有很多关于如何通过python运行Excel宏的示例,但我没有找到任何word)。这是我尝试使用的代码。但是我得到的是 pyhton 永远运行,我不知道为什么。我究竟做错了什么?感谢任何愿意帮助我的人!

这是我的尝试:

import os
import comtypes.client

path=r"path to my folder containing file.docx"

word=comtypes.client.CreateObject("Word.Application")
docx=word.Documents.Open(path, ReadOnly=1)
docx=word.Application.Run("My_Macro_Name")
word.Documents(1).Close(SaveChanges=0)
word.Application.Quit()
wd=0

Run Code Online (Sandbox Code Playgroud)

我也试图更好地指定我的 vba 宏的位置(我将它保存在 .docm 文件中),但仍然没有结果。Python 继续运行而不显示任何结果。这是我的尝试(感谢您到目前为止提供的有用建议!):

import os
import comtypes.client

path=r"path to the .docm file where I saved the vba macro"

word=comtypes.client.CreateObject("Word.Application")
word.Documents.Open(path,ReadOnly=1)
word.Run("Project.Modulo1.ConvertDoc")
word.Documents(1).Close(SaveChanges=0)
word.Application.Quit()
wd=0
Run Code Online (Sandbox Code Playgroud)

python vba ms-word

6
推荐指数
1
解决办法
2970
查看次数

标签 统计

ms-word ×1

python ×1

vba ×1