2015-11-03 93 views
-1

我在收到新郵件時在Outlook中創建了一個新的「規則」,用於搜索郵件主題中的特定單詞。如果它找到特定的單詞,它會調用下面的腳本。腳本被創建爲默認Project1下的新模塊。如何在新郵件到達時觸發MS Outlook中的共享郵箱的vba宏

腳本會將附件從電子郵件中剝離出來並放到本地計算機上。它完美適用於我的個人收件箱,但我很努力讓它爲羣組收件箱工作。

我相信羣組的收件箱名稱叫做「郵箱 - !XXXX XXXXX XXXXXXX XXXXX」。我通過右鍵單擊共享收件箱並在「位置」字段下的「常規」選項卡下找到該信息。

我在想,我需要在我的代碼中的某處添加組收件箱名稱,然後引用MailItem,因爲我猜測它正在爲MailItem查找我的個人收件箱。只是不太確定如何添加它。 :(。任何幫助將不勝感激。

Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
Dim objAtt As Outlook.Attachment 
Dim saveFolder As String 
saveFolder = "d:\temp\" 
    For Each objAtt In itm.Attachments 
      objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName 
      Set objAtt = Nothing 
    Next 
End Sub 
+0

Application_NewMail不適用於此? –

回答

0

太晚了,如果使用規則來更改收件箱。

共享郵箱添加到您的個人資料,並嘗試ItemAdd。http://www.outlookcode.com/article.aspx?id=62

樣本代碼那張ThisOutlookSession模塊中。

Option Explicit 

Private WithEvents olInboxItems As Items 

Private Sub Application_Startup() 
    Dim objNS As NameSpace 
    Set objNS = Application.Session 
    ' instantiate objects declared WithEvents 
    Set olInboxItems = objNS.GetDefaultFolder(olFolderInbox).Items 
    Set objNS = Nothing 
End Sub 

Private Sub olInboxItems_ItemAdd(ByVal Item As Object) 
    On Error Resume Next 
    Itm.BodyFormat = olFormatPlain 
    Itm.Save 
    Set Itm = Nothing 
End Sub 

您可以指向的是這樣的共享收件箱。

Set olInboxItems = _ 
    objNS.Folders("Mailbox - ! XXXX XXXXX XXXXXXX XXXXX").Folders("Inbox").Items 
+0

謝謝,你能否回答我的問題。 [link] http://stackoverflow.com/questions/33513822/in-vba-outlook-how-do-i-write-an-if-statement-that-searches-for-a-specific-wo – Tikkaty

+0

獲得許可錯誤說'無法保存附件 - 沒有權限這樣做'。有任何想法嗎? – Tikkaty

+0

編輯問題。將您當前的代碼添加到原始問題中。 – niton

相關問題