あなたは同じ内容のメールを宛先を変えて送りたいと思ったことはありませんか?
新商品のご案内、商品の価格改定、住所の変更、イベントのご案内など、同じ内容で宛先を変えたり、同じ添付ファイルを付けて送る場面は多いですよね。
いちいち一つずつメールを作っていたらキリがありません。
エクセルVBAを使えば、ボタン一つで複数のメールを送れます。
いわゆる「差し込み印刷」のようなもので、「差し込みメール」と言えばいいでしょうか。
今回は「エクセルで名簿リストから宛先を変えて同じメールと添付ファイルを自動で送る方法」を紹介します。
エクセルで名簿リストから宛先を変えて同じメールと添付ファイルを自動で送る方法
エクセルで名簿リストから宛先を変えて同じメールと添付ファイルを自動で送る方法です。
下の様なリストを想定して紹介します。
B列に宛先、C列に送りたいメールアドレスが入っています。
F12セルにメールの件名、F13セルにメール本文、F14~F16は添付ファイルのパスが入っています。
添付ファイルはあらかじめ準備しておきます。
これで準備できました。
マクロを作るときは、「開発」タブを使います。
開発タブが出ていない方は、下のリンクで出し方を紹介していますので、まずは準備をお願いします。
→エクセルで開発タブを表示する方法
1.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
2.「新規作成」をクリック
3.コード入力画面が開く
4.コードを入力
コードを入力します。
エクセルシートから、宛先、件名、本文、添付ファイルを設定し、メールを送信する、という意味です。
赤枠部のコードです。
Dim OutlookApp As Object
Dim MailItem As Object
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
' Outlookアプリケーションを作成
Set OutlookApp = CreateObject("Outlook.Application")
' シートを設定
Set ws = ThisWorkbook.Sheets("Sheet59") ' シート名を適切なものに変更
' 最終行を取得
lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
' 各行ごとにメールを作成して送信
For i = 3 To lastRow
' メールアイテムを作成
Set MailItem = OutlookApp.CreateItem(0)
' 宛先を設定
MailItem.To = ws.Cells(i, 3).Value
' 件名を設定
MailItem.Subject = ws.Range("F12").Value ' 件名を適切なものに変更
' 本文を設定
MailItem.Body = ws.Cells(i, 2).Value & " 様" & vbCrLf & vbCrLf & ws.Range("F13").Value
' 添付ファイルを追加
Dim filePath As Variant
For Each filePath In ws.Range("F14:F16").Value
If Len(filePath) > 0 Then
MailItem.Attachments.Add CStr(filePath)
End If
Next filePath
' メールを表示(送信前に確認する場合はコメントアウトを外してください)
MailItem.Display
' メールを送信
MailItem.Send
' メールアイテムを解放
Set MailItem = Nothing
Next i
' Outlookアプリケーションを解放
Set OutlookApp = Nothing
コードを入力したら、コードの入力画面を閉じて下さい。
5.ボタンができた →ボタンをクリック
ボタンができました。
ボタンをクリックします。
※Outlookは起動した状態でボタンを押して下さい。
メールが送信されました。
今回は便宜的に送り先を同じアドレスにしています。
7件のメール送信がボタン一つで済みました。
メールを開くとこんな感じです。宛先がエクセルリストのようになっていて、添付ファイルも付いているのがわかります。
宛先に「様」も付いてます。
ご案内メールなら、送信元の署名欄も設定しておくと良いです。
これなら10件でも100件でも、毎回のご案内メールの抜け漏れなく、しかも楽に送信できますね!
まとめ
エクセルで名簿リストから宛先を変えて同じメールと添付ファイルを自動で送る方法のまとめです。
1.エクセルでリスト、添付ファイルを準備
2.「開発」タブをクリック →「挿入」をクリック →「ボタン」をクリック
3.新規作成をクリック
4.コードを入れる画面が出る
5.コードを入力
6.ボタンができた →ボタンをクリック
7.メールが一斉送信される
これで同じご案内を何度もするのが楽になりますね!
※会社のシステムによっては、1時間に100回以上メールを送ると、迷惑メール扱いされるなど、セキュリティが設定されている場合がありますので、ご注意ください。
コメント