2015-02-07 83 views
0

我在訪問Outlook中特定文件夾中的電子郵件時遇到問題。在特定文件夾中打開電子郵件

當我將電子郵件放入收件箱時,以下代碼行可以工作。

Set OtlkApp = GetObject(, "Outlook.application") 
Set ns = OtlkApp.GetNamespace("MAPI") 
Set fldr = ns.GetDefaultFolder(olFolderInbox) 

但是,當我試圖訪問一個名爲「臨時文件」文件夾,它找不到當我嘗試使用此代碼打開它的對象。

Set fldr = ns.Folders("tempfiles") 

語法是否正確?我錯過了什麼嗎?

+0

我不知道簡單的賦值語句,將允許您訪問randon夾。您可能有許多具有相同名稱的文件夾; Outlook如何知道你想要什麼。在這個答案的底部有一對宏,它將得到層次結構中的任何文件夾。 [如何使用VBA或宏將Outlook郵件複製到Excel](http://stackoverflow.com/a/12146315/973283)。 – 2015-02-07 22:00:57

回答

2

根據tempfolders(收件箱的同一級別或子文件夾)的水平,你擴展了文件夾屬性:

'INBOX FOLDER 
Set inboxfldr = ns.GetDefaultFolder(olFolderInbox) 

'TEMPFILES SUBFOLDER 
Set tempfilesfldr = inboxfldr.Folders("tempfiles") 

'TEMPFILES FOLDER (SAME LEVEL AS DEFAULT FOLDERS -INBOX, CALENDAR, TASKS, ETC.) 
Set tempfilesfldr = inboxfldr.Parent.Folders("tempfiles") 
+0

你好漂亮,謝謝! – santaaimonce 2015-02-07 23:00:41

相關問題