2018.07.24みなさまこんにちは、ノグチです。前回は、エクセルVBAからOutlookを操作して、エクセルシートに記入された内容を、メールの件名と本文にセットして、Outlookからメールを送信させる方法をご紹介しました。【エクセルVBA】Outlookでメールを作成・送信する方法エクセルシートに記入された件名や本文を、エクセルVBAによってOutlookのメールの件名と本文にセットしてメール送信する方法をご紹介しています。VBAでメールの送信ができれば、宛先に応じてメールの本文を変えつつ一斉に送信することもできますよ。ビジネスメールのマナーとはいえ、1件、2件ならまだしも、10件、20件となってくると中々苦痛な作業です。コピー&ペーストしたとしても、会社名や名前を間違ってコピペしてしまっていたらもう最悪です。上のコードで作成されたメール最後に連載目次:エクセルVBAでOutlookを操作してみよう!エクセルシートに一覧化された送信先に一括でメールを送りたい例えば、こちらのリスト。リストのD列にあるメールアドレスに、メールの本文にA列の会社名、B列の部署名、C列の担当者名を盛り込みつつ、メールを送信したいとします。メール本文のテンプレートがこちらのシート。追加しつつ、メールを送っていきます。本文を変えつつ複数メールアドレスにメールを一括送信するコード上の送信先シートの送信先に、メール内容シートの本文と送信先シートの情報を結合させてメール送信するコードがこちら。何も難しいことはありません。前回の記事でご紹介したコードのCreateItemメソッドでMailItemオブジェクトを作成する部分からSendメソッドでメール送信する部分をFor~Next文で挟んで、With文とメール本文を加工するステップを修正しただけという、結構単純なコードです。(CreateItemメソッドとMailItemオブジェクトについては、前回記事をご覧ください。上のコードのご紹介文でも書いた通り、MailItemオブジェクトを作成するCreateItemメソッドは、For~Next文の中に書くようにします。CreateItemメソッドでMailItemオブジェクトを作成するのは、言うなればOutlookで「新しいメール」ボタンをクリックしていることと同義です。この処理がFor~Next文の中に無いと折角プロパティの指定をしても、そもそもプロパティをセットする「新しいメール」が無いのでエラーになってしまいます。上のコードで作成されたメール上のコードによって、Outlookで作成されたメールはこんな感じになります。これで、メール本文を変えつつ複数の送信先へメール送信ができますよ!最後に今回は、エクセルシートに一覧化された連絡先に、本文を変えつつOutlookでメールの一斉送信をする方法をご紹介しました。「メールを沢山送りたい、本文は定型文でいいけど、文頭だけは相手の名前を入れないと失礼...仕方ない、1件ずつコピペで本文を作ってメール送信しよう。」これ、私が昔在籍していた総務担当者が実際にやっていたことなんです。一言相談してもらえれば、今回の記事のような方法を伝えられたのにな...という反省の念を込めての今回の方法のご紹介でした。それでは、最後までお読みいただきありがとうございました!次回記事で、VBAで作成したメールの下書きの内容を、メール送信前にチェックする方法をご紹介しています。エクセルVBAでOutlookメールの下書きを作成・表示して送信前に内容チェックするOutlookのMailItemオブジェクトのDisplayメソッドを使って、VBAで作成したOutlookのメール内容を、メール送信前にチェックする方法をご紹介しています。「VBAでメールを作成するのは便利だけど、内容をチェックしないでメール送信してしまうのは心配...」という方にお勧めです。tonari-it.com2018.08.01連載目次:エクセルVBAでOutlookを操作してみよう!エクセルVBAでOutlookのメール作成、送信などの操作をする方法をご紹介しています。メーラーとして便利なOutlookですが、VBAと組み合わせて更に便利に使ってしまいましょう。投稿者プロフィールノグチフリーランスPG・SE元製造子会社SE。業務システム保守・導入両方やった経験をお伝えすることで、少しでもシステムや手作業に悩まされる人が減ればいいなぁと日々夢見ております。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。関連記事Excel・VBA活用術エクセルVBAでCSVデータをカンマで区切ってワークシートに取り込む方法エクセルVBAでCSVを取り込む方法です。今回は、Splitという命令と配列を使ってCSVのレコードをカンマで区切ってワークシートに転記をしていく方法について解説をしていきます。初心者向けエクセルVBAでIEを操作するシリーズです。今回はIEを操作してWEBページ内の検索窓に任意のキーワードを入力して送信する方法をお伝えします。GoogleChromeの検証機能も活用しますよ!2016.02.06Excel・VBA活用術エクセルVBAでCSVを高速に取り込むQueryTableオブジェクト使用時の注意点エクセルVBAで高速にCSVを取り込むことのできるQueryTableオブジェクト。想定されるエラーとその対処法、注意点について解説します。わかりづらいエラーは事前に知っておくことでコーディング時間短縮にもつながります!2018.09.13Excel・VBA活用術エクセルVBAのFunctionプロシージャで祝日判定関数を自作する方法エクセルVBAのFunctionプロシージャの概要と、それを活用した祝日判定関数の作成方法をお伝えします。エクセルVBAには祝日を判定する関数が標準で用意されていないので自作する必要があります。請求データ一覧から請求書を自動で作成するシリーズのVBA講座です。今回は間違いなくお世話になる条件分岐If~Thenの使い方の超基本をマスターしていき特定のデータのみ転記するように改良していきます。【エクセルVBA】Validation.Addメソッドで入力規則のドロップダウンを作る方法ValidationオブジェクトのAddメソッドを使って、セルに入力規則のドロップダウンリストを作成する方法をご紹介しています。シートやブックに入力された値によって入力規則の種類を変えたり、ドロップダウンリストに表示する値を変えたい、という時に便利に使えますよ。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。RowSourceプロパティとAddItemメソッド2020.01.21GASでGoogleスライドのSlideオブジェクトの概要とその取得方法2020.01.162020.01.24Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。