私は、各クライアントの個人情報を使用して、クライアントに電子メールのバッチを送信するためのマクロを構築しました。それはうまくいっていますが、マクロを実行すると、Outlookでポピュレートする第67回のドラフトの後にマクロが電子メールを作成しないようになっています。私は研究しようとしましたが、Outlookがあなたに一度に開いてもらえる電子メールドラフトの数に制限がありませんでした。私は誤って制限を設定しているかどうか誰にでも分かるように、私のコードを以下に掲載しました。Excel電子メールのマクロサイズの制限
マクロの仕組み:従業員には、約500件のアカウントのリストがあり、毎月電子メールで連絡を取り合い、契約を更新します。すべての情報はExcelファイル内にあり、このマクロは各クライアントのメールアドレス、顧客名、顧客の連絡先、更新日などを取得し、個々の電子メールにその情報を使用してよりパーソナライズされた電子メールを作成します。従業員がマクロを実行するためにボタンを押すと、Outlookの各アカウントの電子メールが作成されます。従業員がクライアントに応じて電子メールに追加情報を編集または追加したい場合に備えて、自動的に送信するのではなく、Outlookに電子メールを入力します。ほとんどの場合、彼らはそのまま電子メールを送信しますが、従業員はいくつかの電子メールを編集します。だから、一度にたくさんの草案がOutlookに投入されているのは難しいようですが、従業員が個々に個別に入力するのではなく、このように電子メールを送信する方がはるかに高速です。
マクロが情報の最後の行を実行する必要があるときに私は67以上の電子メールを一度に送信できないというアドバイスや洞察を私に教えてください。もしそうでなければ、従業員には60のバッチでマクロを使用するように伝える必要があります。
Sub SendEMail()
Dim Email As String
Dim Subj As String
Dim Msg As String
Dim URL As String
Dim r As Integer
Dim x As Double
Dim OApp As Object
Dim OMail As Variant
Dim Signature As String
Dim strbody As String
'for formatting reasons
strbody = "<html><body>"
'for looping
With Sheets("List").Select
lastrow = Cells(Rows.Count, "B").End(xlUp).Row
End With
For r = 2 To lastrow
Set OApp = CreateObject("Outlook.Application")
Set OMail = OApp.CreateItem(0)
' Get the email address
Sheets("List").Select
Email = Cells(r, "K")
' Message subject
Sheets("List").Select
Subj = "Renewal for " & Cells(r, "B").Text & " Client # " & Cells(r, "A").Text & " Effective " & Cells(r, "D").Text
' Message body
Sheets("List").Select
strbody = "<p>Dear " & Cells(r, "J").Text & ", </p>" & _
"I am contacting you regarding the upcoming renewal for " & Cells(r, "B").Text & ", account number " & Cells(r, "A").Text & ", which is effective " & Cells(r, "D").Text & ". We have reviewed the account and determined that we have the information we need on file in order to offer renewal terms. & _
"Should you have any questions or if we can be of futher assistance, please don't hesitate to contact " & Cells(r, "O").Text & " at " & Cells(r, "M").Text & " or " & Cells(r, "N").Text & _
" or respond to this email. If you are aware of changes to the contact on this account, please let us know, so we can be sure to get future correspondence to the proper person.<br><br>" & _
"As always, we would like to thank you for your business.<br><br>" & _
"Sincerely,"
On Error Resume Next
Sheets("List").Select
With OMail
.Display
.To = Email
.Subject = Subj
.HTMLBody = strbody & vbNewLine & .HTMLBody
End With
Next r
On Error GoTo 0
Set OMail = Nothing
Set OApp = Nothing
End Sub
67件のメールの後にはどうなりますか?コードがエラーなしで停止するか、コード内の特定の行にエラーがありますか?さらに詳しく説明してください。 –
'strbody ="
"&Cells(r、" J ")の段落にコンパイラエラー - 構文エラーがあるようです。Text&"、
"&_ .....'。マスターコードからコードを再確認してください。 – skkakkar'On Error Resume Next'ステートメントを削除して、何がどこで失敗するのかを見ることができます。 – Dave