我試圖做的是發送一個電子郵件使用VBA在Excel中雖然展望,但與第二天約8:30發送日期/時間的防守。 下面的代碼將發送一封電子郵件罰款,甚至當我的工作站被鎖定時,它甚至會發送一個具有發送時間戳的郵件,但是當我將其設置爲第二天8:30時,他們只是留在我的發件箱中,直到我打開他們打起來,我甚至可以打開他們,並在打擊時間之前發送,他們將罰款,或之後,他們將發送imediatly。用VBA發送Outlook電子郵件的時間不會在第二天發送?
傳入的deferedtime變量是格式化字符串 「DD/MM/YYYY HH:MM:SS」,例如 「15/10/2010 08:30:00」
Sub Send_Outlook_Email(Addresses, attach, strSubject, strBody, defertime)
Dim objOL As Outlook.Application
Dim msg As Outlook.MailItem
Set objOL = New Outlook.Application
Set msg = objOL.CreateItem(olMailItem)
Dim d As Date
strEmail = ""
For i = 0 To UBound(Addresses)
strEmail = strEmail & Addresses(i) & "; "
Next
strEmail = Trim(strEmail)
With msg
.To = strEmail
.subject = strSubject
.HTMLBody = strBody
For i = 0 To UBound(attach)
strAttach = attach(i)
If Len(strAttach) > 0 And Len(Dir(strAttach)) > 0 Then
.Attachments.Add (strAttach)
End If
Next
.DeferredDeliveryTime = defertime
.Send
End With
End Sub
我失去了一些重要的東西?
是的,它是通過Exchange服務器完成的,正如我之前提到的那樣,當我的工作站被鎖定時它會發送,但不會在它運行一晚時發送。我可以運行宏,然後進入我的發件箱命中發送,然後當延遲時間週期它會發送,同樣,當我用延遲時間手動創建電子郵件。考慮到這一點,我不認爲這是Outlook應用程序處於活動或Exchange服務器的問題,但與宏或延遲時間如何傳遞給Outlook – Anthony 2010-10-15 09:46:53