- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVABの変更の仕方)
エクセルVBAでメール送信する方法の改造方法を教えてください
このQ&Aのポイント
- VBA初心者です。エクセルのデータをメール送信したく、ネットで検索して希望に近いVBAを見付けたのですが改造の仕方が分からず、どのように記述したらいいのか教えてください。
- シート1の担当者の名前列にメールアドレスが入っている場合に、その行だけメールを送信したいです。また、シート2のA7セルにメール件名、A10から本文が記述されています。
- 現在はA列しか送信されず、他の情報も本文に含めたいです。シート1のD列に商品、E列に購入日付を入れて、A列とD列とE列に記されている内容をメール本文に載せたいです。具体的な記述方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
手順の組み立ては次のとおりになります。 1.マスタシートのA列の上から下までのセルをFor Next巡回する 2.各セルのC列が1でなかったらスルーする、1なら次の作業を行う 3.各列のADE列のセルの内容を、雛形シートの所定のセルに転記する 4.拾ったマクロでアドレス設定、メールの本文整形、Outlookで送出まで行う 5.1に戻って繰り返す。 サンプル: sub Macro1() dim h as range ’1 for each h in worksheets("宛先マスタ").range("A2:A" & worksheets("宛先マスタ").range("A65536").end(xlup).row) ’2 if h.offset(0, 2) = 1 then ’3 worksheets("送信文章").range("A17") = h worksheets("送信文章").range("A18") = h.offset(0, 3) worksheets("送信文章").range("A19") = h.offset(0, 4) ’4 アドレスのセット(掲示されていない) メール件名のセット メール本文の生成と送出 ’5 End If Next End Sub
補足
早々の回答ありがとうございます。 http://outlook.vba-ken3.jp/sample/001/2009-05-11.html すみません、こちらのサイト様のサンプルファイルなのですが回答頂いたプログラムはどこに記述したらよいのでしょう? 一応上の方に記述してみたのですがエラーが出てしまいまして…。 どうしたらいいのかサッパリ分からないので再度教えていただけるとありがたいです。m(_)m