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

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

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

Author Siluvia Last modified

Excelでは、特定の条件(特定のセルの値など)に基づいてメールを自動送信するプロセスを自動化できます。例えば、セルD7の値が200を超えたときにOutlook経由で自動的にメールを送信したい場合があります。このチュートリアルでは、VBA(Visual Basic for Applications)を使用して、セルの値に基づいてOutlookでメールをトリガーする方法を説明します。

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


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

以下のように操作して、Excelでセルの値に基づいてメールを送信してください。

1. メールを送信する必要があるワークシート(ここではセルD7と仮定)で、シートタブを右クリックし、コンテキストメニューから「コードの表示」を選択します。スクリーンショットをご覧ください:

A screenshot of the context menu in Excel showing the View Code option for a worksheet

2. 表示されたMicrosoft Visual Basic for Applicationsウィンドウで、以下の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コードでは、D7value > 200は、メールを送信する基準となるセルとセルの値です。
2) コード内の xMailBody行で、必要に応じてメール本文を変更してください。
3) .To = "Email Address" の行で、受信者のメールアドレスに「Email Address」を置き換えてください。
4) 必要に応じて、.CC = “” および Bcc = “” セクションでCcとBccの受信者を指定してください。
5) 最後に、.Subject = "send by cell value test" の行でメールの件名を変更してください。

3. Alt + Qキーを同時に押して、Microsoft Visual Basic for Applicationsウィンドウを閉じます。

これで、セルD7に入力された値が200より大きくなった場合、指定された受信者や本文を持つメールがOutlookで自動的に作成されます。「送信」ボタンをクリックすると、このメールを送信できます。スクリーンショットをご覧ください:

A screenshot showing an email draft in Outlook created automatically from an Excel cell value

注意:

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

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


Excelで作成されたメーリングリストのフィールドに基づいて、簡単にOutlook経由でメールを送信する:

Kutools for Excelの「電子メールを送信」機能は、ユーザーがExcelで作成されたメーリングリストに基づいてOutlook経由でメールを送信することを支援します。

A screenshot of Kutools for Excel's Send Emails utility interface

Kutools for Excel - 必要なツールを300以上搭載し、Excelの機能を大幅に強化します。永久に無料で利用できるAI機能もお楽しみください!今すぐ入手


関連記事:

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

🤖 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日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得