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:データ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析してグラフを生成 | Kutools Functions を呼び出す… |
人気機能:重複の検索・ハイライト・マーキング | 空白行を削除 | データを失わず列やセルを統合 | 丸める ... | |
スーパーLOOKUP:複数条件VLOOKUP | 複数値VLOOKUP | 複数シートの検索 | ファジーマッチ .... | |
高度なドロップダウンリスト:すばやくドロップダウンリストを作成 | 依存型ドロップダウンリスト | 複数選択ドロップダウンリスト .... | |
列の管理:特定数の列を追加 | 列を移動 | 非表示列の表示状態を切り替え | 範囲と列の比較 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブック&ワークシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リスト送信で電子メールを送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線でフィルタ...) | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など) | 50 種以上のグラフ タイプ(ガントチャートなど) | 40を超える実用的な 数式(誕生日に基づいて年齢を計算する、など) | 19種の 挿入ツール(QRコードの挿入、パスから画像の挿入など) | 12種類の 変換ツール(単語に変換する、通貨変換など) | 7つの 結合&分割ツール(高度な行のマージ、セルの分割など) | ...さらに多数 |
Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...
Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます
- Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
- 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
- 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!