Excel VBAを使用してOutlookから一括メールを送信する方法

クライアント、顧客、友人、その他の連絡先にパーソナライズされた大量の電子メールを配信する必要がありますか? ワンクリックでそれを実行しますか? それは可能です! Microsoft Excelには、これらすべてを実行する魔法のツールがあります。これは、Visual Basic for Applications、別名 Excel VBA です。

Excel VBAを使用して Outlook から一括メールを送信する方法については、引き続きお読みください。他にもあります! 以下のチュートリアルで説明されている最も簡単な手順に従って、これを練習できます。掘り下げてみましょう!

Excel VBAを使用してOutlookから一括メールを送信する方法

Excel VBAを使用してOutlookから一括メールを送信する方法

現在のチュートリアルでは、Excel からの一括メール送信を自動化するために必要な VBA コードを提供します。必要なのは、データを 1 つの Excel ファイルに収集し、簡単な書式設定を行うことだけです。

実行する VBA プログラムは、電子メール送信アプリとしてMicrosoft Outlookを使用します。したがって、コンピュータに Outlook をインストールして構成する必要があります。VBA コードは、Web ブラウザー ベースの Outlook プログラムを使用できません。

Excel ファイルと Outlook アプリの準備ができたら、次の手順を実行します。

  • 一括メール ワークシートを 6 つの列に編成します。
  • 行 A1 の列見出しに「Email To (A);」と入力します。CC (B) に電子メールを送信します。電子メールの件名 (C); 電子メールの本文 (D)、添付ファイル (E)、ステータス (F)。
  • すべての「宛先アドレス」を列A の見出しの下に追加します。必要に応じて、何千もの電子メールを追加できます。
  • 同様に、列Bの見出しの下に「CC アドレス」を入力します。
  • メールの件名をパーソナライズしてみましょう。C列の見出しの下に連絡先ごとにカスタムの電子メール件名を追加できます。
  • メール本文の内容も同様です。電子メールの内容をコピーして、列Dの見出しの下の行に貼り付けます。
  • ファイルの添付場所をコピーして、列E の見出しの下に貼り付けます。
  • 添付ファイルの場所を取得するには、Shift キーを押しながらコンピュータ上のターゲット ファイルを選択します。
  • 次に、右クリックして「パスとしてコピー」を選択し、PC クリップボード内のファイル アドレスをコピーします。
  • これで、アドレスを E 列の行に直接貼り付けることができます。
  • VBA コードによってステータスが自動入力されるため、F列は空白のままにしておきます。

Excel VBAを使用してOutlookから一括メールを送信する方法

  • Excel シートをマクロ有効ファイルとして保存します。
  • ここで、Alt+F11を押してVBA コード エディタを起動します。
  • 上部のメニューで[ツール]をクリックし、 [参照]を選択します。
  • 次のリストでMicrosoft Office 16.0 オブジェクト ライブラリを探し、ボックスをオンにします。
  • [OK]をクリックしてOutlook を VBA のオブジェクトとして保存します。

Excel VBAを使用してOutlookから一括メールを送信する方法

  • ここで、「挿入」をクリックし、 「モジュール」を選択してコードエディターを開きます。
  • 以下のコードをコピーしてModuleに貼り付けます。

Sub Send_Bulk_Mails() Dim sh As Worksheet Set sh = ThisWorkbook.Sheets("Worksheet_Name") Dim i As Integer Dim OA As Object Dim msg As Object Set OA = CreateObject("outlook.application") Dim last_row As Integer last_row = Application。 CountA(sh.Range("A:A")) For i = 2 To last_row Set msg = OA.createitem(0) msg​​.to = sh.Range("A" & i).Value msg.cc = sh. Range("B" & i).Value msg.Subject = sh.Range("C" & i).Value msg.body = sh.Range("D" & i).Value If sh.Range("E" & i).Value <> "" then msg.attachments.Add sh.Range("E" & i).Value End If msg.send sh.Range("F" & i).Value = "Sent" Next i MsgBox "すべてのメールが送信されました" End Sub

  • コード行 3 の (「Worksheet_Name」) と表示されている部分に、現在のワークシート名をアンダースコアで区切って入力します。
  • メニューから「保存」をクリックしてスクリプトを保存します。
  • F5キーを押してマクロを実行すると、Excel が Outlook 経由で電子メールを自動的に送信します。

Excel VBAを使用してOutlookから一括メールを送信する方法

  • このマクロには、後からExcel リボン メニューの[開発]タブからアクセスすることもできます。

結論

Excel VBA チュートリアルを使用して Outlook から一括メールを送信する方法を理解したので、手動メール送信に時間を費やすことなく、簡単に一括メールを送信できます。

Excel の VBA テクニックをもう 1 つ学びたいですか? VBA を使用してExcel でスペル チェックを自動化する方法については、このチュートリアルを参照してください。

Leave a Comment

MS Access 2010 の DATE 関数

MS Access 2010 の DATE 関数

Accessには、ユーザーが特定の条件で日付や日付範囲を指定できるようにする強力なツールが豊富に用意されています。

Outlook メールを OneNote 2010 に送信する

Outlook メールを OneNote 2010 に送信する

Outlook 2010には、ユーザーがメールをOneNote 2010に転送できる固有の機能があり、OneNote 2010を使用してメモを取る場合に非常に便利です。

Excel 2010からWord文書にデータシートを埋め込む

Excel 2010からWord文書にデータシートを埋め込む

Excel 2010には、さまざまなオブジェクトを埋め込んだりリンクしたりするための機能が含まれています。OLE(オブジェクトのリンクと埋め込み)は、

Outlookカレンダーに祝日を追加する

Outlookカレンダーに祝日を追加する

Outlookカレンダーに年間の国民の祝日や宗教上の祝日を手動で追加するのは面倒な作業です。各日付のイベントを変更し、それをマークする必要があるからです。

Office 2010でリボンを非表示/最小化して集中して作業

Office 2010でリボンを非表示/最小化して集中して作業

サードパーティの邪魔にならないライターを忘れて、MicrosoftはWord 2010、Excel 2010、PowerPoint 2010、Outlook 2010でリボンを非表示にするオプションを導入しました。

Office Word 2010 の書式設定

Office Word 2010 の書式設定

Microsoft Word 2010は、現在最も強力なワードプロセッサアプリケーションの1つです。文書の最も重要な点は、適切に表示されることです。

Outlook 2010 送受信の概要

Outlook 2010 送受信の概要

Outlookに複数のPOP3またはIMAPアカウントを設定するのは非常に簡単で、複数のアカウントを扱う際に非常に便利です。バックエンドでは、メイン

用紙の両面に印刷する方法 [Word 2010]

用紙の両面に印刷する方法 [Word 2010]

文書を両面に印刷する直接的な方法はありませんが、Word 2010 には、印刷プロセスを停止してページをめくるオプションがあります。

Excel 2010: スプレッドシートをパスワードで保護する

Excel 2010: スプレッドシートをパスワードで保護する

Excelで最もよく使われる2つの保護レベルは、ワークシート保護とブック保護です。これらの2つの用語は同じ意味を持つこともありますが、実際には

OneNote 2010: 数式を書く ​​(インクで数式を書く)

OneNote 2010: 数式を書く ​​(インクで数式を書く)

Microsoft Office 2010スイートアプリは、膨大な数式リストを提供しており、それらをすぐに作業に追加することができますが、見つけるのが難しい場合があります。