Python を使用して MS Word でテキスト ボックスを操作する方法 こんにちは、私は Python の初心者です。何百もの msword ファイルで自動化作業を行いたいと考えています。多くの検索と置換作業を行う必要があります。
私はインターネットから例を得ました。したがって、何百もの msword ファイルで元の文字列 AAA を BBB に置き換えることができます。ただし、テキストボックス内の文字列を置き換えることはできません。ほとんど私を夢中にさせ、解決策を見つけるのは難しい.
私の Python バージョンは 2.7 で、次のライブラリをファイルに含めています。Wordファイルですべてのテキストボックスのテキストを表示することはまだできません
Python win32com - Automating Word - How to replace text in a text box?というソリューションを試しました。 しかし、うまくいきませんでした
canvas = word.ActiveDocument.Shapes[0]
for item in canvas.CanvasItems:
print item.TextFrame.TextRange.Text
キャンバス オブジェクトを取得することもできますが、上記の "FOR ループ" でエラー例外が発生します。そのメンバーがいなかったようです。
MS Word/Excelを処理するための具体的な例、またはWindowsの他の一般的なフレームワークまたはライブラリを教えてください。よろしくお願いします…よろしくお願いします〜
以下はエラーです。存在しない属性にアクセスしようとしたようです。
Traceback (most recent call last):
File "a.py", line 108, in <module>
main()
File "a.py", line 86, in main
AppWord = ReadWrod(docPath)
File "a.py", line 51, in ReadWrod
testTB(doc)
File "a.py", line 22, in testTB
print doc.Shapes[0].TextFrame.TestRange.Text
File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 522, in __getattr__
raise AttributeError("%s.%s" % (self._username_, attr))
AttributeError: <unknown>.TestRange