メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

ExcelのリストからOutlook経由で個別の大量メールを送信するにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-08-26

例えば、次のようなデータ範囲がワークシートにあり、名前、メールアドレス、登録コードの列が含まれているとします。ここで、A列にある個別のメールアドレスに対して、それぞれの登録コードとパーソナライズされた挨拶を含むメッセージを送りたいと思います。この問題を解決するために、次の方法が役立つかもしれません。

a screenshot of the mailing list in worksheet

Excelからのリストに宛てた個別大量メールを「差込印刷」機能を使って送信する

VBAコードを使用してExcelからのリストに宛てた個別大量メールを送信する

Kutools for Excelを使用して異なる添付ファイル付きでリストに宛てた個別大量メールを送信する


Excelからのリストに宛てた個別大量メールを「差込印刷」機能を使って送信する

Wordの「差込印刷」機能を使えば、この作業を迅速かつ簡単に完了できます。以下の手順に従って行ってください:

1. 新しい空白のWord文書を開き、「メール」タブをクリックし、「受信者を選択」→「既存のリストを使用」を選んでください。スクリーンショットをご覧ください:

a screenshot of selecting recipients use an existing list

2. 「データソースの選択」ウィンドウで、使用したいデータ範囲が含まれるワークブックを選択し、「開く」ボタンをクリックしてください。スクリーンショットをご覧ください:

a screenshot of selecting a workbook

3. 表示される「テーブルの選択」ダイアログボックスで、必要なデータ範囲があるワークシートを選択し、「OK」ボタンをクリックしてください。スクリーンショットをご覧ください:

a screenshot of selecting the corresponding worksheet that containing the mailing list

4. これでEメール本文とアドレスリストが接続されました。今後は、テキストメッセージを編集し、各メッセージ内で固有の情報が表示される場所を示すプレースホルダーを追加することができます。

(1.) 個別の挨拶名を挿入するには、「メール」タブをクリックし、「差込フィールドの挿入」 「名前」を選択します。これにより、パーソナライズされた名前がメッセージに挿入され、フィールド名は「« »」で囲まれます。

a screenshot of inserting a merged Name field

(2.) メッセージの入力を続け、必要な場所に 登録コードを挿入します。スクリーンショットをご覧ください:

a screenshot of inserting the Registration Code

5. メッセージを作成した後、「メール」タブの下にある「プレビュー結果」をクリックして、Eメールメッセージをプレビューし、実際に結合を完了する前に変更を行います。

6. 問題がないことを確認したら、個別の受信者にEメールを送信できます。「メール」タブをクリックし、「結合の完了」→「電子メールメッセージの送信」を選択してください。スクリーンショットをご覧ください:

a screenshot of selecting Send Email Messages

7. 表示される「Eメールへの結合」ダイアログボックスで、次の操作を行ってください:

(1.) 「To」ドロップダウンリストから「Email_Address」列を選択してください;

(2.) 件名を「 件名」行のテキストボックスに入力します;

(3.) 「レコードの送信」セクションで、「 すべて」を選択します。

a screenshot of configuring the Merge to E-mail dialog box

8. 「OK」をクリックすると、個々の登録コードと共に個別の受信者にメールが一斉に送信されます。メール送信後、Outlookでメールが正常に送信されたか確認できます。


異なる添付ファイルを持つ複数の受信者に個別のメールを送信する:

Kutools for Excel「メール送信」機能を使用すると、Outlook経由でExcelから異なる添付ファイルを含む個別のメールを複数の受信者に迅速に送信できます。また、必要に応じてCCやBccで特定の人にもメッセージを転送できます。       Kutools for Excelを今すぐダウンロードして無料トライアル!

a screenshot of using Kutools for Excel to send personalized emails to multiple recipients easily


VBAコードを使用してExcelからのリストに宛てた個別大量メールを送信する

差込印刷機能以外にも、次のVBAコードでも同様の処理が可能です。以下のように進めてください:

1. ALT + F11キーを押すと、Microsoft Visual Basic for Applicationsウィンドウが開きます。

2. 「挿入」→「モジュール」をクリックし、モジュールウィンドウに次のコードを貼り付けます。

VBAコード: Excelからのリストに宛てた個別大量メールを送信する:

#If VBA7 And Win64 Then
    Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
                         ByVal hwnd As LongPtr, ByVal lpOperation As String, _
                         ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
                         ByVal nShowCmd As Long) As LongPtr
#Else
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
                         ByVal hwnd As Long, ByVal lpOperation As String, _
                         ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
                         ByVal nShowCmd As Long) As Long
#End If
Sub SendEMail()
'update by Extendoffice 20160506
    Dim xEmail As String
    Dim xSubj As String
    Dim xMsg As String
    Dim xURL As String
    Dim i As Integer
    Dim k As Double
    Dim xCell As Range
    Dim xRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count <> 3 Then
        MsgBox " Regional format error, please check", , "Kutools for Excel"
        Exit Sub
    End If
    For i = 1 To xRg.Rows.Count
'       Get the email address
        xEmail = xRg.Cells(i, 2)
'       Message subject
        xSubj = "Your Registration Code"
'       Compose the message
        xMsg = ""
        xMsg = xMsg & "Dear " & xRg.Cells(i, 1) & "," & vbCrLf & vbCrLf
        xMsg = xMsg & " This is your Registration Code "
        xMsg = xMsg & xRg.Cells(i, 3).Text & "." & vbCrLf & vbCrLf
        xMsg = xMsg & " please try it, and glad to get your feedback! " & vbCrLf
        xMsg = xMsg & "Skyyang"
'       Replace spaces with %20 (hex)
        xSubj = Application.WorksheetFunction.Substitute(xSubj, " ", "%20")
        xMsg = Application.WorksheetFunction.Substitute(xMsg, " ", "%20")
'       Replace carriage returns with %0D%0A (hex)
        xMsg = Application.WorksheetFunction.Substitute(xMsg, vbCrLf, "%0D%0A")
'       Create the URL
        xURL = "mailto:" & xEmail & "?subject=" & xSubj & "&body=" & xMsg
'       Execute the URL (start the email client)
        ShellExecute 0&, vbNullString, xURL, vbNullString, vbNullString, vbNormalFocus
'       Wait two seconds before sending keystrokes
        Application.Wait (Now + TimeValue("0:00:02"))
        Application.SendKeys "%s"
    Next
End Sub

3. 次に F5キーを押してこのコードを実行すると、使用したいデータ範囲を選択するよう促すポップアップボックスが表示されます。スクリーンショットをご覧ください:

a screenshot of selecting the mailing list after running the code

4. 「OK」ボタンをクリックすると、個々の登録コードと共に個別のアドレスにメールが一つずつ送信されます。メール送信後、Outlookでメールが正常に送信されたか確認できます。

注意: 上記のコードでは、必要に応じて件名や本文を変更できます。


Kutools for Excelを使用して異なる添付ファイルを持つリストに宛てた個別大量メールを送信する

Kutools for Excelがあれば、「メール送信」機能を使用して、異なる添付ファイルを含む個別のメールを複数の受信者に迅速に送信できます。

Kutools for Excelをインストール後、次のように進めてください:

1. 「Kutools Plus」→「メール送信」をクリックしてください。スクリーンショットをご覧ください:

a screenshot of enabling the Send Emails feature

2. 「メール送信」ダイアログボックスで、使用したいデータ範囲を選択し、必要に応じて受信者アドレス、添付ファイル、件名を指定します。スクリーンショットをご覧ください:

a screenshot of setting the mail fields

3. 編集ボックスに個別の挨拶名を挿入するには、ドロップダウンリストから「名前」を選択し、「 プレースホルダーを挿入 」をクリックしてメッセージに名前を挿入します。スクリーンショットをご覧ください:

a screenshot of inserting placeholder

4. 必要に応じてメッセージ本文をボックスに入力します。スクリーンショットをご覧ください:

a screenshot of finishing the email body

5. メール本文が完成したら、希望する送信モードを選択します。Outlookを使用して送信するか、指定したサーバーを使用して送信できます。スクリーンショットをご覧ください:

a screenshot of choosing one of the send modes

注意:  他のサーバーを使用したい場合は、「SMTP設定」をクリックして送信モードを自分のものに設定します。スクリーンショットをご覧ください:

a screenshot of configuring the Outgoing Server if you want to send emails through that email server

6. 最後に「送信」ボタンをクリックしてメールを送信します。完了すると、送信状況を知らせるプロンプトボックスが表示されます。スクリーンショットをご覧ください:

a screenshot shows the number of emails successfully sent

今すぐKutools for Excelをダウンロードして無料トライアル!


デモ: Outlook経由でExcelのリストに宛てた個別大量メールを送信する

 
Kutools for Excel: 300以上の便利なExcelアドインが利用可能で、30日間無制限で無料試用できます。 今すぐダウンロードして無料トライアル!

関連記事:

ExcelのリストからOutlook経由で複数の受信者にメールを送信するにはどうすればよいですか?


最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ15ツールセット12 種類テキストツールテキストの追加特定の文字を削除など)50種類以上のグラフガントチャートなど)40種類以上の便利な数式誕生日に基づいて年齢を計算するなど)19 種類の挿入ツールQRコードの挿入パスから画像の挿入など)12 種類の変換ツール単語に変換する通貨変換など)7種の統合&分割ツール高度な行のマージセルの分割など)… その他多数
Kutoolsはお好みの言語で利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語、その他40以上の言語に対応!

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...


Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に

  • Word、Excel、PowerPointでタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得