2012-11-26 69 views
5

我有一個Excel VBA以下基本的電子郵件代碼:對從Excel VBA發送的郵件執行Outlook 2010規則嗎?

Dim OutAppUser  As Object 
Dim OutMailUser  As Object 
Set OutAppUser = CreateObject("Outlook.Application") 
Set OutMailUser = OutAppUser.CreateItem(0) 
With OutMailUser 
      .To = Range("Ctl_Req_Email").Value 
      .CC = "" 
      .BCC = "" 
      .Subject = TempFNUser 
      .ReadReceiptRequested = False 
      .Body = userEmailText 
      .Attachments.Add FullTempNameUser 
      .Send 'Use .Send or .Display 
End With 

本宏廣泛分佈,但電子郵件宏觀的實際駕駛工作簿僅由少數做現在的電子郵件地址,這正好已經改變。我創建了一個「發送郵件後」的Outlook規則,該規則爲新電子郵件地址添加了「CC」作爲外部重定向電子郵件的方式。該規則完全適用於手動測試電子郵件,但似乎不適用於從Excel VBA代碼發送的電子郵件。爲了允許規則運行,是否需要在VBA代碼上編寫其他附加代碼以發送電子郵件?

Dim OutAppUser  As Object 
Dim OutMailUser  As Object 
Set OutAppUser = CreateObject("Outlook.Application") 
Set OutMailUser = OutAppUser.CreateItem(0) 
With OutMailUser 
      .To = Range("Ctl_Req_Email").Value 
      .CC = "[email protected]" ' Only change to your code 
      .BCC = "" 
      .Subject = TempFNUser 
      .ReadReceiptRequested = False 
      .Body = userEmailText 
      .Attachments.Add FullTempNameUser 
      .Send 'Use .Send or .Display 
End With 

人們會使用舊錶填寫自己的數據,和宏司機將使用此代碼斷火的電子郵件:你爲什麼不創建一個新的電子表格與新宏

+1

您是否只在Outlook中設置了一個電子郵件帳戶?它能從錯誤的發送嗎?另外,你的規則是客戶端還是服務器端? –

+0

我發現硬編碼的電子郵件可能對個人有問題。當發送到分發列表時,您有更好的成功機會。這裏有關於這個主題的一些有價值的培訓的鏈接。

+0

您可能可以在郵件中使用Outlook中的「立即運行規則」反過來,你也許能夠根據你的版本自動化 - 但是與僅僅更新源數據以獲得正確的地址相比,它將是不雅觀的。 –

回答

0

相關問題