• ベストアンサー

EXCELマクロで複数のEMAIL宛先を指定

WIN XP, EXCEL2002, メーラーはOUTLOOK2002を使っています。 EXCELマクロで複数のEMAIL宛先を指定することはできますか? ActiveWorkbook.SendMail Recipients:="email@*****.co.jp", Subject:="test" にてひとつの宛先の場合はちゃんと送信できましたが、複数の宛先を指定する方法が分かりません。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.2

以下のようにすると、1本のメールを複数人に送れます。 Dim Str(4) As String Str(0) = "email0@*****.co.jp" Str(1) = "email1@*****.co.jp" Str(2) = "email2@*****.co.jp" Str(3) = "email3@*****.co.jp" ActiveWorkbook.SendMail Recipients:=Str, Subject:="test" または ActiveWorkbook.SendMail Recipients:="email0@*****.co.jp,email1@*****.co.jp,email2@*****.co.jp,email3@*****.co.jp", Subject:="test" 最初のは#2の方の回答と似ていますが、#2の方の回答は1本のメールを4人に送るのではなく、4本のメールを単独で1人ずつに送っています。 この回答では、1本のメールを4人に送っています。 「送った相手に、誰々に送っているのか、知らせたい」場合は1本のメールで済ませます。 「送った相手に、誰々に送っているのか、知らせたくない」場合は、個別に4本で送ります。 1本で済ますか個別に送るかは、場合に合わせて使い分けた方が良いでしょう。

min128mini
質問者

お礼

chie65536さん、 最初の方に教えていただいた方で完全に希望通りの動作ができました。ありがとうございます。 実は私も2番目と同じ方法を試していたのですが、正しいメールアドレスを入れてOUTLOOK2002、Outlook Expressの双方で試してみましたが、 「宛先一覧の中に存在しない名前が含まれています。正しい名前を指定して、もう一度実行してください。」 というメッセージが出てしまい、送信できずに困っていたところでした。私の環境が悪いのかな?

その他の回答 (1)

回答No.1

Sub Test() Dim Str(3) As String Dim a As Integer For a = 0 To 3 Str(0) = "0email@*****.co.jp" Str(1) = "1email@*****.co.jp" Str(2) = "2email@*****.co.jp" Str(3) = "3email@*****.co.jp" ActiveWorkbook.SendMail Recipients:=Str(a), Subject:="test" & a Next a End Sub

min128mini
質問者

お礼

primari5869さん、 ありがとうございました。うまく送信できました。

関連するQ&A