スポンサーリンク

VBAでOutlookと連携!エクセルからメールを自動送信する方法

スポンサーリンク
VBAとは?
スポンサーリンク

 

スポンサーリンク

1. VBAを使ってOutlookと連携するメリット

エクセルVBAを使えば、Outlookと連携してメールを自動送信することができます。

✅ VBAでメールを自動送信するメリット

  • メール送信を自動化し、業務の効率UP!
  • 一括送信で複数の宛先へ同時に送信可能!
  • エクセルのデータを本文に自動挿入!
  • 添付ファイルを設定し、レポート送信を簡単に!

💡 VBAを活用すれば、メール業務の時間を大幅に削減できます!


2. OutlookをVBAで操作するための準備

Outlookと連携するには、VBAでOutlookのオブジェクトを使用できるようにする必要があります。

📌 事前設定:参照設定を変更する

  1. ExcelのVBAエディター(VBE)を開く(Alt + F11)
  2. 「ツール」→「参照設定」をクリック
  3. 「Microsoft Outlook XX.X Object Library」にチェックを入れる(XX.Xはバージョン)
  4. 「OK」を押して設定完了!

これでVBAでOutlookを操作できるようになります!


3. VBAでOutlookメールを自動送信する基本コード

🔹 ① シンプルなメール送信コード

📌 指定した宛先にメールを送るVBAコード

Sub SendEmail()
    Dim OutApp As Object
    Dim OutMail As Object
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    
    With OutMail
        .To = "example@example.com" '送信先
        .Subject = "VBAで送る自動メール"
        .Body = "このメールはエクセルVBAで自動送信されました。"
        .Send
    End With
    
    MsgBox "メールを送信しました!"
    
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

実行すると、Outlookを通じてメールが自動送信されます!


🔹 ② 複数の宛先へ一括送信する

📌 宛先をカンマ区切りで複数指定する

Sub SendMultipleEmails()
    Dim OutApp As Object
    Dim OutMail As Object
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    
    With OutMail
        .To = "user1@example.com, user2@example.com" '複数の宛先
        .Subject = "複数の宛先へ自動送信"
        .Body = "このメールはVBAで一括送信されました。"
        .Send
    End With
    
    MsgBox "メールを一括送信しました!"
    
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

実行すると、指定した複数の宛先にメールが一括送信されます!


🔹 ③ 添付ファイル付きのメールを送信する

📌 ファイルを添付して送信するVBAコード

Sub SendEmailWithAttachment()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim filePath As String
    
    filePath = "C:\Users\User\Documents\report.pdf" '添付ファイルのパス
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    
    With OutMail
        .To = "recipient@example.com"
        .Subject = "添付ファイル付きのメール"
        .Body = "添付ファイルをご確認ください。"
        .Attachments.Add filePath
        .Send
    End With
    
    MsgBox "メールを添付ファイル付きで送信しました!"
    
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

実行すると、指定のファイルを添付したメールが送信されます!


4. VBAでOutlookメールを活用する実践テクニック

活用シーンVBAでできること
毎日のレポート送信定型フォーマットのメールを自動送信
お客様への一括連絡複数の宛先へ同じメールを一斉送信
リマインダー通知指定の時間にリマインドメールを送信
添付ファイル付きの送信見積書や請求書を添付して送信
フォーマット変更HTML形式で装飾したメールを送信

💡 VBAを活用すれば、メール業務の手間が大幅に削減できます!


5. まとめ

VBAを使えば、エクセルからOutlookメールを自動送信できる!個別メール・一括送信・添付ファイル送信が簡単に可能!Outlookとの連携で業務の効率化が実現!VBAを活用して、メール業務をもっとスマートに!

💡 VBAをマスターすれば、毎日のメール業務が劇的に効率化されます!🚀

コメント

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