我试图用pywin32打开Word文档,从一些文本框中复制值并打印出来。代码和错误如下。非常感谢任何帮助。对于这个可能很简单的问题,我找了很久也没有答案。在import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = 0
doc = word.Documents.Open('C:/testdoc.docm')
question2 = ActiveDocument.Variables("txtQuestion02").Value
print question2
回溯(最近一次呼叫):
文件“C:/Users/rjudge/SkyDrive/Programming/SAP Assignment grading/Grade MS Word-Doc文件版本.py“,第18行,英寸
问题2=ActiveDocument.变量(“txtQuestion02”)。值
名称错误:未定义名称“ActiveDocument”
伯尼建议后最近的错误:
回溯(最近一次呼叫):
文件“C:/Users/Robert/SkyDrive/Programming/SAP Assignment grading/Grade MS Word-Doc”版本.py“,第18行,英寸
问题2=word.ActiveDocument.Variables(“txtQuestion02”)。值
文件“C:\Python27\lib\site packages\win32com\client_uuinit_u.py”,第463行,在getattr
返回self.ApplyTypes(*args)
文件“C:\Python27\lib\site packages\win32com\client_yuinit_u.py”,第456行,位于ApplyTypes
self.oleobj.InvokeTypes(dispid,0,wFlags,retType,argTypes,*args),
pywintypes.com_错误:(-2147352567,“发生异常。”,(0,u'Microsoft Word',u'对象已被删除',u'C:\Program Files(x86)\Microsoft Office\Office12\1033\WDMAIN11.CHM',25305,-2146822463),无)
进程结束,退出代码为1
在Word中设置txtQuestion02的方式(文本框的VBA代码):
`
专用子项txtQuestion02\u Change()
在Me.TXT答案02。值=Me.txtQuestion02.价值
端接头
`在
当我查看局部变量时,变量确实显示它具有正确的值,并且每当我更改文本框中的内容时,它也会立即更改。txtQuestion02.value似乎确实在做它应该做的事情。我似乎无法使用pywin32访问。现在我要走一条可怕的道路,打印出文本,在那里我可以用python操作它。但这完全是错误的。在