「python word 起動」
といった検索キーワードで、時折アクセスがあります。
Wordで作られたdocxファイルでちょっとした操作を行うならpython-docxが便利ですが、ワープロソフトMicrosoft Wordを起動する場合はpywin32・win32com.clientです。
pywin32・win32com.clientでWordを操作する
拙著『VBAユーザーのためのPython超入門』でも多用しているIDLEのShellウィンドウで、コードを実行してみましょう。
モジュールのimport
まずはwin32com.clientモジュールのimportです。
Wordを起動する
続いてWordを起動します。
ただし、起動しただけではWordがパソコンの画面に表示されない点には注意が必要です。
上記のコードを入力して[Enter]キーで実行したあと、次のプロンプト「>>>」が表示されるまで、少し時間があったはずです。
この少しの時間に、表示されていない状態でWordが起動しています。
Wordを表示する
非表示状態では確認し辛いので、以下のコードを実行して表示しましょう。
文書の開いていない、空っぽのWordが表示されます。
WordのApplication.VisbleプロパティにTrueを設定することで、
Wordを表示しています。
新規文書を作成する
以下のコードを実行すると、新規のWord文書が開かれます。
WordのDocuments.Addメソッドで、
新規Documentオブジェクトを作成しているコードです。
Wordを終了する
Wordを終了するなら以下のコードです。
WordのApplication.Quitメソッドを実行することで、
Wordを終了できます。
VBAのコードとよく似ている
上記のコードをまとめると以下のとおりです。
>>> wd_app = win32com.client.Dispatch('Word.Application')
>>> wd_app.Visible = True
>>> wd_app.Documents.Add()
>>> wd_app.Quit()
COMアプリケーションのひとつMicrosoft Wordを、Pythonを使って操作してるだけですから、VBAからWordを操作するコードと似ています。以下のようなコードをVBEのイミディエイトウィンドウで実行するのと、よく似ています。
wd_app.Visible = True
wd_app.Documents.Add
wd_app.Quit
Word起動するまでは違いますけれど、変数wd_appにWord.Applicationへの参照を取得した後は、プログラミング言語PythonとVBAの違いはあるものの、ほとんど同じです。
オブジェクトブラウザーを使えるWord VBA経験者には、それほど難しくはないはずです。
- 『Excel VBAユーザーのためのWord VBA入門(1)』出ました。
- 『Word VBA入門』に登場するオブジェクトごとのプロパティ一覧
- 『Word VBA入門』に登場するオブジェクトごとのメソッド一覧
最終更新日時:2023-04-21 12:04
Home » Python » pywin32・win32comの使い方 » PythonでWordを起動する-win32com.client.Dispatch('Word.Application')