我正在使用MS Excel和Outlook 2013.我正在尝试自动化使用Outlook将5封电子邮件发送到指定地址的Excel电子表格。
技巧是我希望每条消息一次显示一条消息,只有当用户点击发送或关闭消息时才转到下一条消息。以下是我到目前为止的情况:
Sub Send_Emails()
Dim OutApp As Object: Set OutApp = CreateObject("Outlook.Application")
Dim OutMail As Object: Set OutMail = OutApp.CreateItem(0)
'Send Email
With OutMail
.to = "john.doe@mycompany.com"
.Subject = "This is the Subject"
.Body = "This is message"
.Display
End With
On Error Resume Next:
OutMail = Nothing
OutApp = Nothing
End Sub
Sub Send_Five_Emails()
For i = 1 To 5 'Send email 5 times
Call Send_Emails
Next i
End Sub
此代码的问题在于它一次显示所有5个消息窗口。有没有办法让一个消息窗口的Close事件触发显示下一个消息窗口,以便让它们一次出现一个?
我很感激帮助。
答案 0 :(得分:0)
使用 .Display (True)
expression.Display(Modal)
参数用于除Explorer
和MAPIFolder
个对象之外的所有对象, True 使窗口模态。 默认值为False 。