エクセル小技:メール送信するマクロ
エクセルマクロでメール送信します。
使えるSMTPサーバーがあれば、その設定を記述すれば簡単に送信可能です。
サンプルコードは以下の通りです。
Sub Send_Mail()
Set L_Message = CreateObject("CDO.Message")
L_Message.To = "makoto@fukura.net"
L_Message.From = "makoto@fukura.net"
L_Message.Subject = "件名です"
L_Message.TextBody = "本文です"
L_Message.AddAttachment ("C:_D_Dairy\2303\230305\添付ファイル.txt")
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'SMTPサーバー利用
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.server" 'SMTPサーバーのアドレス
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = "587" 'SMTPサーバーのポート
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = "1" '0:認証無し/1:SMTP認証
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "userID" '認証ユーザー
L_Message.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password" '認証パスワード
L_Message.Configuration.Fields.Update
L_Message.Send
Set L_Message = Nothing
End Sub
件名やらアドレスやらSMTPサーバーは、エクセルシートを参照する様に適当に変更してください。例によって、エラー処理も自分で入れて下さいね。
実際には、自動実行マクロで日報エクセルシートを編集・新規保存した後、そのファイルを関係者にメール送信しています。
なんだかんだで、まだまだ E-mail 残ってますね。