pythonでoutlookを操作する

python

毎回同じテンプレートでメール作成するのめんどくさいな・・・

テンプレートをプログラムで作成できるようにしてみよう

WindowsにAnaconda環境をインストールすると、pywin32というパッケージがついてきます。これを利用して、ウィンドウズのメーラーのoutlookを操作することができます。

事前準備

「pywin32」のパッケージがあるかを、ANACONDA NAVIGATORの「Environments」で確認します。

プログラムの作成

Outlookに新規メールを作成する最小サンプル

import win32com.client

outlook = win32com.client.Dispatch('Outlook.application')
mail = outlook.CreateItem(0)

mail.BodyFormat = 2 #メールをHTML形式に設定
mail.To = '宛先メールアドレス'
mail.Cc = 'CCのメールアドレス'
mail.Bcc = 'BCCのメールアドレス'
mail.Subject = 'タイトル'
# HTML形式のメッセージ本文
mail.HTMLBody = "テスト<br/>テスト"

mail.display() #メールの表示

mail.Toに宛先メールアドレス

mail.CcにCCのメールアドレス

mail.BccにBccのメールアドレス

mail.Subjectにメールの件名

mail.HTMLBodyに、メール本文

を入力します。メール本文には、html形式で改行を入れるなどできます。

実行結果

ちょっと工夫

HTMLbodyへのテキストを変数とし、事前にメール案文を外部のエクセルシートのデータ等から引っ張ることで、メール文テンプレートの中にデータを入れたりできますので、よく連絡する顧客への定期連絡などはこれでかなり楽になるかと思います。

案文をテンプレート化して変化する数値のみを取得して出力というようにすることで、変な入力ミスなどがなく、運用できています。

プログラムの実行は、バッチファイル化すると、ワンクリックで呼び出せて便利ですよ。

バッチからanaconda環境を実行

タイトルとURLをコピーしました