1
我有VBA代碼在特定的Outlook文件夾中查找電子郵件中的附件並將它們保存到某個位置。Outlook規則未運行VBA代碼
我有一個Outlook規則將電子郵件發送到Outlook文件夾,然後觸發宏。該代碼不會自動在我的電腦上啓動,但會在另一臺計算機上啓動。電子郵件進入,規則將其放入文件夾,但代碼不運行。當我手動運行代碼時,通過VB編輯器,它將附件保存在正確的位置。
我檢查過以確保文件夾和路徑名是正確的(如果他們錯了,那麼無論哪種方式,手動運行時代碼將無法正常運行)。
展望規則:郵件到達
之後,從XXXXXXXXXXXX
與XXXX在主題
,這臺機器只
它移動到
應用此規則xxxxx文件夾
和運行Project1.ThisOutlookSession.Save
VBA代碼:
Sub Save(item As Outlook.MailItem)
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Dim msg As Outlook.MailItem
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set olFolder = objNS.GetDefaultFolder(olFolderInbox)
Set olFolder = olFolder.Folders("xxxxxxx")
Set oApp = CreateObject("Shell.Application")
For Each myitem In olFolder.Items
For Each att In myitem.Attachments
att.SaveAsFile "\\.............\" & att.FileName
myitem.Attachments.Remove 1
myitem.Save
Next
Next
End Sub
試試這個http://stackoverflow.com/questions/6604675/move-outlook-messages-if-content-contains-a-number-greater-than-threshold/9639088 #9639088移動代碼中的消息,如本文所示。所以基本上你把你的代碼和我的代碼結合起來 – 2013-02-14 06:57:29