我有一些简单的代码,可以打开word文档,更新其中的字段,然后关闭它。当我手动运行该代码时,它可以正常工作,但是当我通过SQLServer代理运行它时,会出现一个错误。与SQL Server代理一起运行的用户与手动运行时与我一起登录的用户相同。我知道代理可以“查看”文档,因为任务中使用的早期代码实际上创建了此文档
代码:
import win32com.client
word = win32com.client.DispatchEx("Word.Application")
filePath = "\\\\network\\data\\file.docx"
doc = word.Documents.Open(filePath)
doc.TablesOfContents(1).Update()
doc.Close(SaveChanges=True)
word.Quit()
错误:
Executed as user: DOMAIN\User. Traceback (most recent call last):
File "\\network\data\file.docx", line 8, in
doc.TablesOfContents(1).Update() AttributeError: 'NoneType' object has no attribute 'TablesOfContents'
为什么会发生这种行为
对于将来可能遇到此问题的任何人,我将其修复为:
相关问题 更多 >
编程相关推荐