Python

PythonでOutlookを色々操作(自動でメールを送る、他人の予定表に予定を追加)

PythonOutlook

今回はPythonでOutlookを操作して、メールの作成、自動送信や予定表の追加をやっていきます。

Pythonでやる理由は特にないです。VBAでもできますが、Pythonの方がかっこいいので、今回はPythonで実装していきます。

PythonでOutlookを使ってメールを送る

outlook2

Excelにメール宛先と添付ファイルの場所をまとめておいて、Pythonを起動するとそのファイルを読んでOutlookでメールを送信するという流れです。

  1. Excelにアドレスをまとめる
  2. Pythonを起動
  3. Outlookでメールを自動送信

では実際にコードを見ていきます。

たったこれだけでPythonでメールを自動で送れちゃいます。

コードの解説をしていきます。

PythonでOutlookのメールを送る解説

importでモジュールをインストールしています。

今回はOutlookを操作するwin32comとExcelを操作するopenpyxlをインポートしています。

file_pathでメール宛先がまとまっているExcelの場所をしています。ここは各自のパスに変更してください。

ws=でメール宛先がまとまっているシートの名前を指定します。ここがsheet1だったらそのように変更してください。

ここでExcelの情報をリスト化しています。

min_rowとmin_colはそれぞれメール宛先の最初の行列を指定しているので、各自の行列スタートの数字にかえてください。

max_colは一番右端の列を指定しています。

ここでは先ほどリスト化したデータを元にメールを作成していってます。

メールのそれぞれの要素に適切な情報を渡しています。

最後のmail.Send()でメールが実際に送られます。

これだけでPythonでメールを自動で送ることができます。

では次からはPythonでOutlookの予定表を追加する方法を紹介していきます。

PythonでOutlookの他人の予定表(スケジュール)に予定を追加する方法

Pythonを使って他人の予定表に予定を追加する方法も簡単で早速コードを紹介します。

今回は色んな人に予定を追加する方法ではなく、単発で予定を追加する方法を紹介しています。(複数追加の検証が面倒くさかっただけです)

ほとんどメールを作る時の方法と一緒で違うところは↓の部分だけです。

この一文で他人の予定表に予定を追加することができます。

このコードでは特定の人の予定しか追加できませんが、メールの時のようにエクセルにチームメンバーとかをまとめておけば、すぐに一気に予定を追加することが可能になります。