はじめに
仕事で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アドレスを使用してくれるので
プログラム作成時に意識する必要もないのでとっても楽。
これは便利!