在循环发送之前,显示每封邮件进行手动编辑。

问题描述 投票:0回答:1

我有200多封邮件要发送,并有单独的附件。

列表在Excel中。

使用其他地方的代码,我设法打开了一封电子邮件,包括附件、电子邮件地址、主题和正文。

一旦邮件被打开,我希望循环暂停,这样我就可以检查细节,添加签名等。然后,我想让循环进入下一个迭代,但直到我点击 "发送"。

还有,更小的问题,但vbNewLine似乎没有创建新的行?

Sub SendEmail_Example1()

Dim EmailApp As Outlook.Application
Dim Source As String
Dim Attachment As String
Dim edress As String
Set EmailApp = New Outlook.Application

Dim EmailItem As Outlook.MailItem
Set EmailItem = EmailApp.CreateItem(olMailItem)

i = 2
Do Until IsEmpty(Cells(i, 1))

    Attachment = "C:\Users\username\Downloads\" + Cells(i, 4)
    edress = Cells(i, 1)

    EmailItem.To = edress
    EmailItem.Subject = "Test Email From Excel VBA"
    EmailItem.HTMLBody = "Hi," & vbNewLine & vbNewLine & _
      "This is my first email from Excel" & _
      vbNewLine & vbNewLine & _
      "Regards," & vbNewLine & _
      "VBA Coder"
    Source = ThisWorkbook.FullName
    EmailItem.Attachments.Add (Attachment)

    EmailItem.Display
    i = i + 1
    Loop

Set EmailApp = Nothing
Set EmailItem = Nothing

End Sub
vba email outlook
1个回答
0
投票

我已经有15年没有尝试过了,但是可以尝试一下下面的模态属性。EmailItem.Display 办法

https:/docs.microsoft.comen-usofficevbaapioutlook.mailitem.display。

© www.soinside.com 2019 - 2024. All rights reserved.