「python word saveas2」
という検索キーワードでアクセスがありました。
SaveAs2という名前のメソッドを持つPythonのライブラリーがあるのかどうか不明ですが、pywin32を使えば、確実にWordのDocument.SaveAs2メソッド使えますので、簡単なサンプルをご紹介します。
pywin32からWord.Document.SaveAs2を使ってPDF保存する
以下のようなスクリプトで、Cドライブtempフォルダーに存在するfoo.docxファイルを、同じフォルダーにfoo2.pdfとして保存できます。
wd = win32com.client.Dispatch('Word.Application')
wd.Visible = True
wdFormatPDF = 17
doc.SaveAs2(FileName=r'C:\temp\foo2.pdf', FileFormat=wdFormatPDF)
Word VBAのコードとほぼ同じ
後半の、
doc = wd.Documents.Open(r'C:\temp\foo.docx')
wdFormatPDF = 17
doc.SaveAs2(FileName=r'C:\temp\foo2.pdf', FileFormat=wdFormatPDF)
は、Word VBAならば
Dim doc As Document
Set doc = Documents.Open("C:\temp\foo.docx")
doc.SaveAs2(FileName:="C:\temp\foo2.pdf", FileFormat:=wdFormatPDF)
と書けます。
Word VBAならば定数wdFormatPDFが、実際には17という整数であることは明らかですが、Pythonではわかるはずもないので、上記のスクリプトでは、
wdFormatPDF = 17
と、Wordの定数と同じ名前で変数を定義して代入をしています。
前半の
wd = win32com.client.Dispatch('Word.Application')
wd.Visible = True
は、VBScriptなどからWordを操作する場合に、
Dim wd
Set wd = CreateObject("Word.Application")
wd.Visible = True
と書くのと同じ処理です。
「python word saveas2」
を検索なさった方が、Word VBAをほとんどご存知ないのなら、まずはWord VBAについて学習することをおすすめします。
- 『Excel VBAユーザーのためのWord VBA入門(1)』出ました。
- 『Word VBA入門』に登場するオブジェクトごとのプロパティ一覧
- 『Word VBA入門』に登場するオブジェクトごとのメソッド一覧
最終更新日時:2023-04-20 15:49
- Newer:PowerPoint VBAで表内文字列を上下中央に
- Older:Pythonで奇数・偶数を判定する
Home » Python » pywin32・win32comの使い方 » pywin32・win32com.clientからWord.Document.SaveAs2メソッドを利用する