vbaで1つ以上の添付ファイルを使用して複数の受信者にメールを送信するためのマクロをOutlookで実行しています。私はマクロに精通していないので、さまざまな情報源からの入力を受けて、最終的なコードを以下に示します。vbaマクロによる添付ファイル付きのメール
しかし、私はmax。 3つの添付ファイルの制限はすべての受信者にとって一定ですが、1つまたは2つのファイルのみを添付する必要があるときはいつでもコメントすることで無効にする必要があります。 は、マクロが自動的に入力され、1人の受信者が1つの添付ファイルを持っているし、次の受信者が2つのまたは3の添付ファイル
Sub SendMail()
Dim objOutlook As Object
Dim objMail As Object
Dim ws As Worksheet
Set objOutlook = CreateObject("Outlook.Application")
Set ws = ActiveSheet
For Each cell In ws.Range("A2:A1000")
Set objMail = objOutlook.CreateItem(0)
With objMail
.To = cell.Value
.Cc = cell.Offset(0, 1).Value
.Bcc = cell.Offset(0, 2).Value
.Subject = cell.Offset(0, 3).Value
.Body = cell.Offset(0, 4).Value
.Attachments.Add cell.Offset(0, 5).Value
'.Attachments.Add cell.Offset(0, 6).Value
'.Attachments.Add cell.Offset(0, 7).Value
.Send
End With
Set objMail = Nothing
Next cell
Set ws = Nothing
Set objOutlook = Nothing
End Sub
あなたがしたいことがある場合は、空白などを残した値に応じて入力を取る方法はありますメールを送った後、2〜3秒待ってから追加してください。非常に多くのメールを送信する見通しが速すぎることがあります。 –
@EganWolf - 私は、送信する時間に関しては何の問題も生じていません。 40人の受信者を郵送するのに2秒かかることはほとんどありません。私は何かを追加する必要がある場合私に教えてください? – Irvin
実際、私はそれをテストしたことがありません。私は、添付ファイル付き約30通のメールを送信していた他の人が書いたマクロを使用して更新していました。コメントがありました。 –