Я работаю над автоматизацией генерации отчетов с использованием Python.В текстовом документе мне нужно обновить поля формы, чтобы завершить генерацию отчета.При использовании win32.com.client.gencache.EnsureDispatch
api я не могу получить поля формы из документа word.
Ниже приведен скрипт, написанный:
Я получаю следующую ошибку:
raise AttributeError("'%s' object has no attribute '%s'" % (repr(self), attr))
AttributeError: '<win32com.gen_py.Microsoft Word 16.0 Object Library.FormFields instance at 0x2217380698888>' object has no attribute '__getitem__'
Я попытался найти справку о том, как получить поля формы, присутствующие в текстовом документе, но не смог найти какой-либо надлежащей документации по получаемой ошибке.
word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible='False'
file = os.path.abspath(path)
d = word.Documents.Open(file)
d.FormFields[0].Result = reviewer
d.FormFields [0] .Результат должен быть действительным атрибутом.
при печати d
, нужно знать, что объект вообще не содержит никаких полей формы.
['CLSID', '__doc__', '__getattr__', '__init__', '__module__', '__repr__', '__setattr__', '_dispobj_', 'coclass_interfaces', 'coclass_sources', 'default_interface', 'default_source']