13
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【python】outlookでメール送信

Last updated at Posted at 2019-12-30

はじめに

仕事でexcelでメール作成マクロ作ったけど
「excelだと起動わずらわしいし、excelありきになるからなんかやだな…」
と思い、業務外ってことでリラックスした気持ちで探したら
神がかり的にわかりやすいサイトが見つかったので作ってみた。

参考サイト

#ライブラリ
import win32com.client

#Outlookのオブジェクト設定
outlook = win32com.client.Dispatch('Outlook.Application')
mymail = outlook.CreateItem(0)

#署名
sign = '''
株式会社 ホゲホゲドットコム
世界のナベヒロ
'''


#メールの設定
mymail.BodyFormat = 1
mymail.To = 'foo@hoge.co.jp; bar@hoge.co.jp'
mymail.cc = 'foo@hoge.com'
mymail.Bcc = 'bar@hoge.com'
mymail.Subject = '件名'
mymail.Body = '''各位
お疲れ様です。

以上、よろしくお願いいたします。
'''+ '\n' +sign

path = r'C:\\Users\watya\Desktop\hogehoge.txt' # 添付ファイルは絶対パスで指定
mymail.Attachments.Add (path)

#出来上がったメール確認
mymail.Display(True)
#確認せず送信する場合は、mymail.Display(True)を消して、下記コードを使用する
#mymail.Send()

実行結果

 mymail.Display(True)
で実行したので、メールは作成されたけど
送信まではされず下書き状態でストップしてくれた。やさしい。。。
これはテンプレ通りのメールを作成するのに便利ですね。

しかもfromはログイン時のOutlookアドレスを使用してくれるので
プログラム作成時に意識する必要もないのでとっても楽。
これは便利!

13
20
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?