Excelで指定したセル範囲からメールを送信するにはどうすればよいですか?
多くの場合、Excelワークシート内の指定された範囲の内容は、メールでのやり取りに役立つことがあります。この記事では、Excel内で直接指定した範囲をメール本文に挿入して送信する方法をご紹介します。
Excelで指定したセル範囲からメールを送信する
驚きのツールを使って指定したセル範囲からメールを送信する
Excelでのメール送信に関するその他のチュートリアル...
Excelで指定したセル範囲からメールを送信する
次のVBAコードを使用すると、範囲をコピーし、それをOutlookのメール本文に直接貼り付けることができます。以下の手順に従ってください。
1. コピーしたい範囲が含まれているワークシートで、「Alt + F11」キーを同時に押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。
2. 開いた「Microsoft Visual Basic for Applications」ウィンドウで、「ツール」>「参照設定」をクリックしてください(下のスクリーンショットを参照)。
3. 「参照設定 – VBAProject」ダイアログボックスで、「Microsoft Outlook Object Library」オプションを探してチェックを入れ、OKボタンをクリックします。
4. 「挿入」>「モジュール」をクリックし、以下のVBAコードをモジュールウィンドウにコピー&ペーストします。
VBAコード:Excelで指定した範囲を含むメールを送信する
Sub Send_Email()
'Updated by Extendoffice 20200119
Dim xRg As Range
Dim I, J As Long
Dim xAddress As String
Dim xEmailBody As String
Dim xMailOut As Outlook.MailItem
Dim xOutApp As Outlook.Application
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select range you need to paste into email body", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set xOutApp = CreateObject("Outlook.Application")
Set xMailOut = xOutApp.CreateItem(olMailItem)
For I = 1 To xRg.Rows.Count
For J = 1 To xRg.Columns.Count
xEmailBody = xEmailBody & " " & xRg.Cells(I, J).value
Next
xEmailBody = xEmailBody & vbNewLine
Next
xEmailBody = "Hi" & vbLf & vbLf & " body of message you want to add" & vbLf & vbLf & xEmailBody & vbNewLine
With xMailOut
.Subject = "Test"
.To = "happy.xuebi@163.com"
.Body = xEmailBody
.Display
'.Send
End With
Set xMailOut = Nothing
Set xOutApp = Nothing
Application.ScreenUpdating = True
End Sub
注意:
- 1). このスクリプト行
xEmailBody = "Hi" & vbLf & vbLf & "追加したいメッセージ本文" & vbLf & vbLf & xEmailBody & vbNewLine を必要に応じて変更してください。 - 2). コード内のこの行でメール受信者と件名を指定してください:
(.To = happy.xuebi@163.com および .Subject = "test") 。
5. F5キーを押してコードを実行します。表示されるKutools for Excelダイアログボックスで、メール本文に貼り付けたい範囲を選択し、OKボタンをクリックします。スクリーンショットをご覧ください:
6. これで、指定された受信者、件名、本文、選択したExcel範囲を含むメールが作成されます。「送信」ボタンをクリックしてこのメールを送信してください。スクリーンショットをご覧ください。
注意:このVBAコードは、Outlookをメールプログラムとして使用している場合にのみ動作します。
驚きのツールを使って指定したセル範囲からメールを送信する
Outlookを使用せず、Excel内で直接指定した範囲のデータを貼り付けてメールを送信したい場合は、Kutools for Excelの「メール送信」機能をお勧めします。この機能を使えば、一度メールアドレスの送信サーバーを設定すれば、今後そのメールアドレス経由でExcelから直接メールを送信できます。
1. まず、必要なフィールドを持つメーリングリストを準備する必要があります。
- ヒント:メーリングリストには少なくとも2行必要で、最初の行はヘッダーにする必要があります(例えば、Excelで2つのメールアドレスにメールを送信したい場合、以下のように「メール」というヘッダーとともにこれらのメールアドレスを入力してください)。
- または、「メーリングリストの作成」機能を使用して簡単にメーリングリストを作成することもできます。
2. メール本文に追加する範囲を選択し、Ctrl + Cキーを押してコピーします。
3. メーリングリスト全体(ヘッダーを含む)を選択し、「Kutools Plus」>「メール送信」をクリックします。スクリーンショットをご覧ください:
4. すると、「メール送信」ダイアログボックスが表示されます。
- 4.1) 選択されたメーリングリストの項目が対応するフィールドに自動的に入力されます(必要に応じてさらにフィールドを追加できます)。
- 4.2) メール本文ボックスをクリックし、Ctrl + Vキーを押して選択した範囲のデータを貼り付けます。その後、必要に応じて他のコンテンツを追加します。
- 4.3) 「Outlookを使用してメールを送信」のチェックを外します。
- 4.4) 「SMTP設定」ボタンをクリックします。スクリーンショットをご覧ください:
5. 次に、「SMTP設定 – 新しいスキーム」ダイアログボックスが表示されます。メールアドレスとそのサーバー設定を入力し、「送信済みメールを保存する場所」のチェックボックスをオンにして保存先フォルダを指定し、OKボタンをクリックして設定を保存します。
6. 「メール送信」ダイアログボックスに戻ったら、「送信」ボタンをクリックしてメールを送信します。
Kutools for Excel - Excel向けの300以上の必須ツールを搭載。永久に無料のAI機能をお楽しみください!今すぐダウンロード!
関連記事:
Excelで指定されたセル内のメールアドレスにメールを送信する
メールアドレスのリストがあり、それらのメールアドレスに一括で直接Excelからメールを送信したいとします。どのように実現すればよいでしょうか?この記事では、Excelのセル内に指定された複数のメールアドレスにメールを送信する方法をご紹介します。
Excelでメールを送信する際にOutlookの署名を挿入する
Excelから直接メールを送信したい場合、そのメールにデフォルトのOutlook署名を追加するにはどうすればよいでしょうか?この記事では、Excelでメールを送信する際にOutlook署名を追加するための2つの方法をご紹介します。
Excelで複数の添付ファイル付きメールを送信する
この記事では、Excelで複数の添付ファイルを付けてOutlook経由でメールを送信する方法について説明しています。
Excelで期日が過ぎた場合にメールを送信する
例えば、列Cの期日が7日以内(現在の日付が2017/9/13の場合)、列Aの指定された受信者に列Bの指定された内容でリマインダーメールを送信します。これを実現するにはどうすればよいでしょうか?この記事では、この問題に対処するためのVBA方法を詳しく紹介します。
Excelでセル値に基づいて自動的にメールを送信する
例えば、あるワークシートのセルD7の値が200より大きい場合、Outlook経由で特定の受信者にメールを自動的に作成したいとします。この記事では、この問題を迅速に解決するためのVBA方法を紹介します。
最高のオフィス業務効率化ツール
🤖 | Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Execution|コード生成|カスタム数式の作成|データの分析とグラフの生成|Kutools Functionsの呼び出し…… |
人気の機能:重複の検索・ハイライト・重複をマーキング|空白行を削除|データを失わずに列またはセルを統合|丸める…… | |
スーパーLOOKUP:複数条件でのVLookup|複数値でのVLookup|複数シートの検索|ファジーマッチ…… | |
高度なドロップダウンリスト:ドロップダウンリストを素早く作成|連動ドロップダウンリスト|複数選択ドロップダウンリスト…… | |
列マネージャー:指定した数の列を追加 |列の移動 |非表示列の表示/非表示の切替| 範囲&列の比較…… | |
注目の機能:グリッドフォーカス|デザインビュー|強化された数式バー|ワークブック&ワークシートの管理|オートテキスト ライブラリ|日付ピッカー|データの統合 |セルの暗号化/復号化|リストで電子メールを送信|スーパーフィルター|特殊フィルタ(太字/斜体/取り消し線などをフィルター)…… | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など)|50種類以上のグラフ(ガントチャートなど)|40種類以上の便利な数式(誕生日に基づいて年齢を計算するなど)|19 種類の挿入ツール(QRコードの挿入、パスから画像の挿入など)|12 種類の変換ツール(単語に変換する、通貨変換など)|7種の統合&分割ツール(高度な行のマージ、セルの分割など)|… その他多数 |
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、PowerPoint用アドインとOffice Tab Proが含まれます
- 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
- 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
- 30日間フル機能お試し —— 登録やクレジットカード不要
- コストパフォーマンス最適 —— 個別購入よりお得