セルに入力した文章をOutlook(アウトルック)でメール送信する方法【Excelマクロ/VBA】

当ページのリンクには広告が含まれています。

スポンサーリンク

エクセルVBAを使って

セルに入力した「件名」「本文」を Outlook(アウトルック)で メール送信 する方法を解説します。

パソコンに Outlook アプリがインストールされていて、メールアカウントを設定済であれば実行可能です。

インストールされているが、メールアカウントを設定していない人は、設定して使える状態にする必要があります。

メールアカウントをOutlookに追加する 方法

Microsoft
クリックしてジャンプ

イメージ動画(音声はありません)

スポンサーリンク

サンプルダウンロード

説明に使用しているエクセルファイルです

下図のような表示が出た場合は、以下の手順でマクロを有効にできます

  1. 一度、エクセルを閉じる
  2. ダウンロードしたエクセルファイルを「右クリック」
  3. 「プロパティ」を選択
  4. 「全般」タブのセキュリティの「許可する」に
  5. 「適用」ボタンをクリック
  6. 「OK」ボタンをクリック

スポンサーリンク

Outlookでメール送信:VBAコード

Sub SendEmail_Outlook()

    'Outlookがインストールされていて
    'メールアカウントが設定されており
    'メールが使える状態であること
    '「Microsoft_Outlook_16_Object_Library」 参照追加
    
    Dim objOutlook As Outlook.Application
    Dim objMail As Outlook.MailItem
    Dim wsMail As Worksheet
    
    Set objOutlook = New Outlook.Application
    Set wsMail = ThisWorkbook.Sheets("Sheet1")
    
    Set objMail = objOutlook.CreateItem(olMailItem)
    
    With wsMail
        objMail.To = "ここにメールアドレス"         '宛先(To)
        objMail.CC = "ここにメールアドレス"         '宛先(CC)
        objMail.BCC = "ここにメールアドレス"        '宛先(BCC)
        objMail.Subject = .Range("C2").Value        '件名
        objMail.BodyFormat = olFormatPlain          'メールの形式
        objMail.Body = .Range("C3").Value           '本文
        objMail.Send                                '送信
    End With
    
    Set objOutlook = Nothing    'あとしまつ
    
    MsgBox "送信完了"
    
End Sub

スポンサーリンク

Outlookでメール送信:前提条件

パソコンに Outlook がインストールされていて、メールアカウントの設定がしてあり、メールが使える状態であること。

Outlook を操作する際には 参照設定の追加が必要。

スポンサーリンク

Outlookでメール送信:参照設定の追加

ツール参照設定 から

Microsoft Outlook 〇〇.〇 Object Library を探して OK

スポンサーリンク

Outlookでメール送信:シート名を指定

ここで「sheet1」を指定

 Set wsMail = ThisWorkbook.Sheets("Sheet1")

スポンサーリンク

Outlookでメール送信:宛先メールアドレス

ここで宛先メールアドレスを指定

objMail.To = "ここにメールアドレス"         '宛先(To)
objMail.CC = "ここにメールアドレス"         '宛先(CC)
objMail.BCC = "ここにメールアドレス"        '宛先(BCC)

スポンサーリンク

Outlookでメール送信:件名 / 本文

件名は「C2」セルから取得

objMail.Subject = .Range("C2").Value        '件名

本文は「C3」セルから取得

objMail.Body = .Range("C3").Value           '本文

スポンサーリンク

クリックしてジャンプ