Note: The other languages of the website are Google-translated. Back to English

如何自動將附件從Outlook下載/保存到特定文件夾?

一般來說,您可以通過單擊保存一封電子郵件的所有附件 附件 > 保存所有附件 在 Outlook 中。 但是,如果您需要保存所有收到的電子郵件和接收電子郵件中的所有附件,有什麼想法嗎? 本文將介紹兩種自動將附件從 Outlook 下載到某個文件夾的解決方案。


使用VBA和規則將Outlook附件自動下載到文件夾

此方法將引入VBA腳本,並使用規則運行此腳本,以自動將Outlook附件下載並保存到特定文件夾。 請執行以下操作:

1。 按 其他 + F11 鍵以打開“ Microsoft Visual Basic應用程序”窗口。

2。 點擊 插入 > 模塊,然後將以下VBA腳本粘貼到新打開的“模塊”窗口中。

VBA:自動將Outlook附件保存到某個文件夾

Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem)
Dim oAttachment As Outlook.Attachment
Dim sSaveFolder As String
sSaveFolder = "C:\Users\DT168\Documents\outlook-attachments\"
For Each oAttachment In MItem.Attachments
oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName
Next
End Sub

備註:請找出 sSaveFolder =“ C:\ Users \ DT168 \ Documents \ outlook-attachments \”,然後根據需要替換目標文件夾的路徑。

3。 保存VBA腳本,然後關閉“ Microsoft Visual Basic for Applications”窗口。

4。 去的 郵件 查看,然後單擊 首頁 > 規則 > 管理規則和警報。 看截圖:

5。 在打開的“規則和警報”對話框中,請單擊 新規則 上的按鈕 電子郵件規則 標籤。 看截圖:

6。 現在,在“規則嚮導”對話框中,請單擊以選擇 對我收到的消息應用規則 選項,然後單擊 下一頁 按鈕。

7。 在“規則嚮導(您要檢查哪些條件?)”對話框中,請取消選中任何選項,然後單擊 下一頁 按鈕。 然後點擊 在彈出的Microsoft Outlook對話框中單擊按鈕。 看截圖:

8。 現在,在“規則嚮導”(您要對消息做什麼?)對話框中,請: (1) Check the 運行腳本 選項; (2) 點擊文字 一個腳本 打開“選擇腳本”對話框,選擇我們在步驟2中添加的腳本,然後單擊 OK 按鈕; (3) 點擊 下一頁 按鈕。

9。 在“規則嚮導(是否有例外?)”對話框中,請單擊 下一頁 直接點擊。

10。 現在,在最後一個“規則嚮導”對話框中,請在 步驟 1 框,根據需要檢查選項 步驟 2 部分,然後單擊 按鈕。

11。 關閉“規則和警報”對話框。

現在,所有附件都將從您的電子郵件帳戶下載並保存到指定的目標文件夾中。 並且所有傳入電子郵件的附件也將自動下載並保存到指定的文件夾中。


使用Kutools for Outlook自動將Outlook附件下載到文件夾

如果您安裝了Kutools for Outlook,則可以應用它 自動分離 選項以自動下載所有Outlook附件並輕鬆保存到特定文件夾。

Kutools for Outlook:為Outlook添加了100多種方便的工具,可以在60天內免費試用,沒有任何限制。 閱讀更多      立即免費試用

1。 點擊 庫工具 > 自動分離 > 啟用 啟用自動分離功能。

2。 繼續點擊 庫工具 > 自動分離 > 自動分離管理器.

3。 在“自動分離附件”對話框中,檢查 自動分離所有收到的附件 選項,然後進行如下配置:
(1)點擊瀏覽按鈕  指定目標文件夾以保存自動分離的附件;
(2)可以選擇檢查 使用以下樣式創建子文件夾 選項,然後從下拉列表下面選擇一種子文件夾樣式;
(3)可以選擇檢查 只有帶有以下擴展名的附件 選項,然後在下面的框中鍵入附件文件擴展名;
(4)可以選擇檢查 附件圖標仍保留在電子郵件中 選項。

備註:如果需要自動分離發件人的附件,則可以檢查 按規則自動分離附件 選項,點擊 全新 按鈕,然後在第二個“自動分離附件”對話框中鍵入發件人的電子郵件地址並指定目標文件夾。

4。 點擊 Ok 按鈕保存設置。

從現在開始,所有附件(或具有指定文件擴展名的附件,或根據您的設置來自指定發件人的附件)將自動保存。

備註:您可以將Kutools用於Outlook的 全部分離 (附件)功能或 保存全部 (附件)功能可在Outlook中快速從多封/所有收到的電子郵件中下載/保存所有附件。


演示:使用Kutools for Outlook自動將Outlook附件下載到文件夾


尖端: 在這個視頻裡, 庫工具 選項卡添加者 Kutools for Outlook。 如果需要,請單擊 這裡 免費試用60天!


相關文章:


Kutools for Outlook-為Outlook帶來100個高級功能,並使工作更加輕鬆!

  • 自動CC / BCC 根據規則發送電子郵件; 自動前進 自定義多封電子郵件; 自動回复 沒有交換服務器,還有更多自動功能...
  • BCC警告 -當您嘗試全部答复時顯示消息 如果您的郵件地址在“密件抄送”列表中; 缺少附件時提醒,還有更多提醒功能...
  • 在郵件對話中回复(全部)帶有所有附件; 回复許多電子郵件 片刻之間; 自動添加問候語 回复時將日期添加到主題中...
  • 附件工具:管理所有郵件中的所有附件, 自動分離, 全部壓縮,重命名全部,保存全部...快速報告, 計算選定的郵件...
  • 強大的垃圾郵件 習俗 刪除重複的郵件和聯繫人... 使您能夠在Outlook中做得更聰明,更快和更好。
拍攝kutools前景kutools選項卡1180x121
拍攝kutools前景kutools加標籤1180x121
 
按評論排序
留言 (108)
4.5中的5評分 · 1評級
網站主持人對此評論進行了最小化
大家好,腳本不適合我。我還有其他事情需要做。 Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem) Dim oAttachment As Outlook.Attachment Dim sSaveFolder As String sSaveFolder = "\\MHO-ITD-SM\Users\smutharaju\Desktop\Ranjith\Outlook Attachments" 對於 MItem.Attachments oAttachment 中的每個 oAttachment .SaveAsFile sSaveFolder & oAttachment.DisplayName Next End Sub
網站主持人對此評論進行了最小化
嗨 SRINIVAS,我相信您需要將驅動器號添加到鏈接的開頭。 即 C:\users\test\etc 希望這會有所幫助! 安德魯
網站主持人對此評論進行了最小化
在 VBA 中,您還需要在文件路徑的末尾添加最後一個反斜杠。 如下。 "D:\Outlook 附件\" 希望這能解決任何問題。馬特
網站主持人對此評論進行了最小化
HI

VBA 腳本對我很有用......一次 - 再也不會了。

我什至刪除了文件夾中的文件並重新運行,什麼也沒有。

我究竟做錯了什麼 ? - 規則正在運行,因為我讓它同時顯示警報
網站主持人對此評論進行了最小化
[quote]大家好,腳本對我不起作用。我還有其他事情需要做。 Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem) Dim oAttachment As Outlook.Attachment Dim sSaveFolder As String sSaveFolder = "\\MHO-ITD-SM\Users\smutharaju\Desktop\Ranjith\Outlook Attachments" 對於 MItem.Attachments oAttachment 中的每個 oAttachment .SaveAsFile sSaveFolder & oAttachment.DisplayName Next End Sub斯里尼瓦斯[/quote] 同樣在這裡我嘗試了所有選項我覺得腳本正在運行但我仍然沒有看到文件加載到我的計算機指定路徑中。有人可以幫助我最感激
網站主持人對此評論進行了最小化
腳本似乎也不起作用,一切都很好,代碼等,當我運行規則時沒有附件通過? 在office 2007上運行? 任何想法為什麼?
網站主持人對此評論進行了最小化
您好,我已經嘗試了選項 1(使用 VBA 和規則自動將 Outlook 附件下載到文件夾)並且效果很好。 我有以下兩個查詢:i)有沒有辦法通過擴孔文件在多個共享路徑下載相同的附件? ii)它還保存附件,光標在每張紙的A1上,應該選擇sheet1。 因此,當您從路徑表打開文件時,應該打開 A1 上的光標。 非常感謝你! 問候, Bhavesh Luhana
網站主持人對此評論進行了最小化
此規則或類似規則是否可以應用於 Outlook 的 webmail 版本?
網站主持人對此評論進行了最小化
嗨,我一直在嘗試按照指示進行操作。 但保存宏後我沒有得到“運行腳本”選項。 我已經啟用了宏,重新啟動了 Outlook 幾次。 但它仍然是該選項仍然不起作用。 請幫忙。 謝謝!
網站主持人對此評論進行了最小化
我同意 AVNIKA。 我有同樣的問題:-|
網站主持人對此評論進行了最小化
嗨,我一直在嘗試按照指示執行步驟,我選擇了上述所有選項,但是在選擇“運行腳本”選項並選擇“腳本”鏈接後,我沒有在該對話框中獲得腳本。 請盡快提供幫助。 謝謝!
網站主持人對此評論進行了最小化
我有同樣的問題。 我在這裡找到了一個解決方案: https://answers.microsoft.com/en-us/msoffice/forum/msoffice_outlook-mso_win10/the-option-to-run-a-scritp-has-disappeared-from/d289e698-47fa-497a-80fa-633067a0de37#ThreadAnswers<br /> 一旦我用密鑰更新了我的註冊表......它又開始按預期工作了。 試一試,看看它是否適合你。
網站主持人對此評論進行了最小化
thx,今天仍然工作:)
網站主持人對此評論進行了最小化
非常感謝您如此明確地提到的步驟......這些對我有很大幫助,讓我的工作變得非常輕鬆......謝謝......!
網站主持人對此評論進行了最小化
這對我來說非常有效 Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem) Dim oAttachment As Outlook.Attachment Dim sSaveFolder As String sSaveFolder = "\\Dck-server-02\g\00 Uploads\" For Each oAttachment In MItem.Attachments oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName Next End Sub 如您所見,當它複製到網絡驅動器時,我已將作為附件的文件名保留為相同。 但是,如果多封電子郵件的附件文件名相同,則該腳本將允許最近的附件覆蓋網絡文件夾中的前一個附件。 是否有一個我可以輸入到腳本中的編輯,它將附加一個“-1”“-2”“-3”等......到附件文件名的末尾? 因此,例如,如果附件被命名為“inspection”並且我得到多個通過,我可以將它們重命名為“inspection-1”“inspection-2”“inspection-3”任何幫助將不勝感激! 謝謝你。
網站主持人對此評論進行了最小化
嗨,賈亞亞。 在保存之前嘗試檢查文件。 Dim filepath As String filepath = Dir(sSaveFolder & oAttachment.DisplayName) If filepath = "" Then oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName Else oAttachment.SaveAsFile sSaveFolder & "1-" & oAttachment.DisplayName End if 等等...玩弄代碼,讓我知道你的進展如何..
網站主持人對此評論進行了最小化
是否有可能更改此設置,以便僅複製名稱中包含某些單詞的文件?
網站主持人對此評論進行了最小化
可以設置 Kutools 使其僅根據主題保存來自某些電子郵件的附件嗎? 同一個文件可以從一封電子郵件保存到多個目錄嗎? 我們希望將其用於報告分發而不是電子郵件。
網站主持人對此評論進行了最小化
嗨,非常感謝這項工作,但只有一次,下次文件不會保存在磁盤中:(我不知道為什麼,知道嗎?謝謝
網站主持人對此評論進行了最小化
嗨,我有同樣的問題(它只工作一次)。 你能解決問題嗎?
網站主持人對此評論進行了最小化
嗨,
請檢查目標文件夾outlook-attachments是否存在。 有關此問題的更多信息將有所幫助。 謝謝!
網站主持人對此評論進行了最小化
嗨,我必須說它的腳本很棒,它解決了我 80% 的工作,但我仍然有一個問題。 我收到的附件每天都有新的日期和時間戳,我想自動保存這些附件,但要刪除日期/時間戳,以便下次它將替換/覆蓋並保存同名的新副本。,做不希望每天的附件都以新日期保存。 相反,需要在相同位置替換相同的文件。 你能幫忙嗎?
網站主持人對此評論進行了最小化
大家好,我該如何設置,以便我有不同的腳本將文件發送到不同的文件夾? 感謝您提前提供的任何幫助!
網站主持人對此評論進行了最小化
嗨,我正在設置頁面頂部的腳本,它工作正常,但是,我想命名正在保存的附件,以便它覆蓋舊的。 我需要添加什麼才能實現這一點? 謝謝大衛
網站主持人對此評論進行了最小化
您好所有專家,我嘗試使用 VBA 腳本設置如上所述的自動下載,但目標文件夾中沒有保存任何內容。 我在 Outlook 2007 和 Outlook 2010 上進行了嘗試,並確保該文件夾具有所有必要的權限。 但仍然沒有保存任何附件。 誰可以幫我這個事? 乾杯斯坦利
網站主持人對此評論進行了最小化
在 Outlook 2013 上,“運行腳本”選項不可用我可以做任何其他事情來保存電子郵件中的附件而不使用 Kutools
網站主持人對此評論進行了最小化
如果缺少“運行腳本”選項,那是因為自幾個月前的安全更新以來,默認情況下它已被阻止。 在這裡查看更多信息: https://www.slipstick.com/outlook/rules/outlook-2016-run-a-script-rules/
網站主持人對此評論進行了最小化
嗨,腳本工作正常......但想從子文件夾中提取 PDF,而不是從主收件箱中。 有沒有辦法改變劇本?
先感謝您 !
網站主持人對此評論進行了最小化
嗨埃里克,
下面的 VBA 腳本將保存郵件文件夾中的所有 PDF 附件。 對於從某個文件夾保存,您可以在手動運行規則時指定文件夾。


公共子 SaveAttachmentsToDisk(EmailItem As Outlook.MailItem)
將 xAttachment 變暗為 Outlook.Attachment
將 xDotPos 調暗為整數
將 xSavePath 調暗為字符串,將 xFileType 調暗為字符串
xSavePath = "C:\Users\DT168\Documents\outlook-attachments\"
對於 EmailItem.Attachments 中的每個 xAttachment
xDotPos = InStrRev(xAttachment.DisplayName, ".")
xFileType = Mid(xAttachment.DisplayName, xDotPos, Len(xAttachment.DisplayName) - xDotPos + 1)
如果 xFileType = ".pdf" 那麼
xAttachment.SaveAsFile xSavePath & xAttachment.DisplayName
如果結束
下一頁
END SUB
網站主持人對此評論進行了最小化
您好,是否有用於 CSV 附件的 VBA 腳本。 我目前有自動進入 Outlook 中命名文件夾的報告作業,我現在希望文件夾中的那​​些文件自行提取並進入我桌面上的相應文件夾。 希望這是有道理的。 請幫忙! 我對 VBA 很陌生。
網站主持人對此評論進行了最小化
我已經完成了所有腳本以從 Outlook 郵件中下載附件,並且當我手動運行它時我的腳本工作正常。 我想使用 Rule 選項自動執行該過程。 但是我在規則嚮導窗口中看不到我的宏。 我也在註冊表中啟用了以下選項
HKEY_CURRENT_USER \軟件\微軟\辦公室\ 16.0 \展望\安全
DWORD:EnableUnsafeClientMailRules
價值:1

但我仍然無法在規則嚮導列表中看到我的宏。 我的規則嚮導列表是空的,但我已經創建了宏並且它的手動工作正常。 我必須在我的規則嚮導中引入宏來自動化這個過程。 如果您有任何想法,請幫助我!
這裡還沒有評論
載入更多
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點