2017-06-08 5 views
2

受信者にカスタマイズされた電子メールを100人以上の受信者に送信しようとしています。マクロを使用して複数の受信者にカスタマイズされたメールを送信

今は一人の人にメールを送信できますが、複数の受信者のためにそれをループして内容を変更する方法はわかりません。

私はこのような何かを持っており、それが動作しますが、私が持っている問題のこの種で解決策を探しに

With OutlookMailItem 
.To = Range("O2").Value 
.Subject = "Promotion campaign" 
.Body = "Dear Sir/Madam," & vbNewLine & vbNewLine & _ 
     "You are eligible for & Range("A2").Value & _ 
     "Please follow the instruction below to redeem your gift" 
+0

このようなスパムは誰にも送信しないでください。 – Rahul

+0

https://stackoverflow.com/a/38303646/4539709 – 0m3r

答えて

2

いい場所を続行する方法は考えではありません:あなた以下 https://www.rondebruin.nl/win/s1/outlook/amail8.htm

」あなたが達成したいコードを見つけるでしょう、と私は思います。

仮定:電子メールアドレスのリストは、A1からの

  • リストを開始

    • 、たとえば名のために、B1から始まります。あなたには、いくつかのより多くの変更を加えたい場合はちょうど今、私はすべてのメールを示す.Displayメソッドを使用するためにC1

    から始まる被験者の.Body

  • リストを変更していますが、.Sendにそれを変更した場合には、自動的にこれらを送信しますメールを表示せずに

    Sub Send_Row_Or_Rows_Attachment_1() 
    'Working in 2000-2016 
    'For Tips see: http://www.rondebruin.nl/win/winmail/Outlook/tips.htm 
        Dim OutApp As Object 
        Dim OutMail As Object 
        Set OutApp = CreateObject("Outlook.Application") 
        Dim intHowManyRows As Integer

    With Application .ScreenUpdating = False End With intHowManyRows = Application.Range("A1").CurrentRegion.Rows.Count For r = 1 To intHowManyRows 'Save, Mail, Close and Delete the file Set OutMail = OutApp.CreateItem(0) With OutMail .To = Cells(r, 1).Value .Subject = Cells(r, 3).Value '.Attachments.Add FullName -> If you want to add attachments .Body = "Hi there" & vbNewLine & vbNewLine & "How are you " & Cells(r, 2) .Display 'Or use Send End With Next r Set OutMail = Nothing Set OutApp = Nothing Application.ScreenUpdating = True End Sub
  • +0

    OMGそれは不思議そうです、ありがとうございます! "intHowManyRows = Application.Range(" A1 ")。CurrentRegion.Rows.Count"は何ですか?それは値を持つ最後の行を見つけることを意味しますか? – yeocs93

    +1

    はい:)これは、A1でカーソルをセットし、CTRL + Aを1回押すと同じです。テーブル全体が選択されています。そのあと、私はそのテーブルにいくつの行があるかをカウントしています。そのため、より多くのアイテムを貼り付けると、送信するメールの数を動的にカウントします:ps。あなたは歓迎です;)この投稿が役に立った場合は投票してください。ありがとう! – SuShuang

    +0

    署名を電子メールに追加する場合は、.Bodyに署名を入れます。例:.Body = "こんにちは"&vbNewLine&vbNewLine& "どうやって"&セル(r、2)&vbNewLine&vbNewLine& "ベストアンサー"&vbNewLine& "SuShuang" – SuShuang

    関連する問題