python打开word内对象_使用pywin32打开Word文档并读取现有的textbox变量

该博客讲述了作者尝试使用pywin32库在Python中打开Word文档并读取文本框变量的值。在尝试访问ActiveDocument.Variables时遇到了'对象已被删除'的错误。博客内容包括问题描述、代码示例以及VBA代码的展示,讨论了如何在Word文档中设置和更新文本框的值,并表达了寻找解决方案的愿望。
摘要由CSDN通过智能技术生成

我试图用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操作它。但这完全是错误的。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值