Note: The other languages of the website are Google-translated. Back to English

Excelのセル値に基づいて電子メールを自動的に送信するにはどうすればよいですか?

Excelで指定されたセル値に基づいて、Outlookを介して特定の受信者に電子メールを送信するとします。 たとえば、ワークシートのセルD7の値が200より大きい場合、電子メールが自動的に作成されます。 この記事では、この問題をすばやく解決するためのVBAメソッドを紹介します。

VBAコードを使用してセル値に基づいて電子メールを自動的に送信する


VBAコードを使用してセル値に基づいて電子メールを自動的に送信する

Excelのセル値に基づいてメールを送信するには、次のようにしてください。

1.ワークシートで、セルの値(ここではセルD7と言います)に基づいて電子メールを送信する必要があります。シートタブを右クリックして、[ コードを表示 コンテキストメニューから。 スクリーンショットを参照してください:

2.ポップアップで アプリケーション向け Microsoft Visual Basic ウィンドウの場合は、以下のVBAコードをコピーしてシートコードウィンドウに貼り付けてください。

VBAコード:Excelのセル値に基づいてOutlook経由でメールを送信する

Dim xRg As Range
'Update by Extendoffice 2018/3/7
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
  Set xRg = Intersect(Range("D7"), Target)
    If xRg Is Nothing Then Exit Sub
    If IsNumeric(Target.Value) And Target.Value > 200 Then
        Call Mail_small_Text_Outlook
    End If
End Sub
Sub Mail_small_Text_Outlook()
    Dim xOutApp As Object
    Dim xOutMail As Object
    Dim xMailBody As String
    Set xOutApp = CreateObject("Outlook.Application")
    Set xOutMail = xOutApp.CreateItem(0)
    xMailBody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2"
    On Error Resume Next
    With xOutMail
        .To = "Email Address"
        .CC = ""
        .BCC = ""
        .Subject = "send by cell value test"
        .Body = xMailBody
        .Display   'or use .Send
    End With
    On Error GoTo 0
    Set xOutMail = Nothing
    Set xOutApp = Nothing
End Sub

免責事項:

1)。 VBAコードでは、 D7 及び 値> 200 は、メールを送信するセルとセルの値です。
2)。 必要に応じてメール本文を変更してください xMailBody コードの行。
3)。 メールアドレスを受信者のメールアドレスに置き換えます .To = "メールアドレス".
4)。 そして、必要に応じてCcとBccの受信者を指定します .CC =“” 及び Bcc =“” セクション。
5)。 最後に、メールの件名を次の行に変更します .Subject = "セル値テストで送信".

3。 プレス 他の + Q キーを一緒に閉じて アプリケーション向け Microsoft Visual Basic 窓。

今後、セルD7に入力する値が200を超えると、指定した受信者と本文を含む電子メールがOutlookに自動的に作成されます。 あなたはクリックすることができます 送信 このメールを送信するボタン。 スクリーンショットを参照してください:

免責事項:

1. VBAコードは、電子メールプログラムとしてOutlookを使用している場合にのみ機能します。

2.セルD7に入力されたデータがテキスト値の場合、電子メールウィンドウもポップアウトされます。


Excelで作成されたメーリングリストのフィールドに基づいて、Outlookを介して簡単に電子メールを送信します。

世界 メールを送る の有用性 Kutools for Excel Excelで作成されたメーリングリストに基づいてOutlookを介して電子メールを送信するユーザーを支援します。
今すぐダウンロードしてお試しください! (30日間の無料トレイル)


関連記事:


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300以上の強力な機能。 Office / Excel2007-2019および365をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 全機能30日間の無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性が50%向上し、毎日何百ものマウスクリックが減ります。
officetab下部