跳至主要内容

如何在 Outlook 中将邮件的附件重命名并保存到文件夹中?

Author: Sun Last Modified: 2025-05-07

在 Outlook 中,您可能经常收到带有附件的邮件,您是否尝试过将邮件的附件重命名并保存到一个文件夹中,如下图所示?显然,您可以将它们逐个重命名并保存到文件夹中,但实际上,我有一个 VBA代码可以快速将所有附件重命名为相同的名称,然后保存到一个文件夹中。
doc rename save attach 1

在文件夹中重命名并保存相同名称的附件

使用 Kutools for Outlook 在文件夹中重命名并保存附件


在文件夹中重命名并保存相同名称的附件

1.选择您想要保存其附件并重命名为相同名称的邮件。

2. 按下 "Alt" + "F11" 键,然后在 "Project1" 窗格中,双击 "ThisOutlookSession" 在右侧创建一个新的空白脚本,然后复制并粘贴代码到其中。

VBA:重命名并保存附件

Public Sub SaveAttachsToDisk()
'UpdatebyExtendoffice20180521
Dim xItem As Object  'Outlook.MailItem
Dim xSelection As Selection
Dim xAttachment As Outlook.Attachment
Dim xFldObj As Object
Dim xSaveFolder As String
Dim xFSO As Scripting.FileSystemObject
Dim xFile As File
Dim xFilePath As String
Dim xNewName, xTmpName As String
Dim xExt As String
Dim xCount As Integer
On Error Resume Next
Set xFldObj = CreateObject("Shell.Application").browseforfolder(0, "Select a Folder", 0, 16)
Set xFSO = New Scripting.FileSystemObject
If xFldObj Is Nothing Then Exit Sub
xSaveFolder = xFldObj.Items.Item.Path & "\"
Set xSelection = Outlook.Application.ActiveExplorer.Selection
xNewName = InputBox("Attachment Name:", "Kutools for Outlook", xNewName)
If Len(Trim(xNewName)) = 0 Then Exit Sub
For Each xItem In xSelection
    For Each xAttachment In xItem.Attachments
        xFilePath = xSaveFolder & xAttachment.FileName
        xAttachment.SaveAsFile xFilePath
        Set xFile = xFSO.GetFile(xFilePath)
        xCount = 1
        Saved = False
        xExt = "." & xFSO.GetExtensionName(xFilePath)
        xTmpName = xNewName
        xNewName = xTmpName & xExt
        If xFSO.FileExists(xSaveFolder & xNewName) = False Then
            xFile.Name = xNewName
            xNewName = xTmpName
        Else
            xTmpName = Left(xNewName, Len(xNewName) - Len(xExt))
            While Saved = False
                xNewName = xTmpName & xCount & xExt
                If xFSO.FileExists(xSaveFolder & xNewName) = False Then
                    xFile.Name = xNewName
                    xNewName = xTmpName
                    Saved = True
                Else
                    xCount = xCount + 1
                End If
            Wend
        End If
    Next
Next
Set xFSO = Nothing
End Sub

doc rename save attachments in a folder 2

3. 点击 "工具" > "引用",在弹出的对话框中,勾选 "Microsoft Script Runtime"复选框。

doc rename save attachments in a folder 3 doc arrow right doc rename save attachments in a folder 4

4. 点击 "确定",按下 "F5" 键运行代码,会弹出一个 "选择文件夹" 对话框以选择或创建一个文件夹来放置附件。
doc rename save attachments in a folder 5

5. 点击 确定, 然后为附件命名。
doc rename save attachments in a folder 6

6. 点击 "确定",现在附件已重命名为相同名称,如果有重复,重复的附件将添加数字作为后缀。


在Outlook中使用原始附件回复邮件

众所周知,在Outlook中回复邮件时,原始邮件中的附件会被移除。如果您希望在回复邮件时保留附件,可以尝试使用Kutools for Outlook的“带附件回复”功能,它可以将原始邮件中的附件一并回复给收件人,并且适用于所有邮件。   点击以获取完整功能 30 天免费试用!
 
doc reply with attach
 
Kutools for Outlook:包含数十个实用的Outlook插件,可在 30 天内免费试用,无任何限制。

使用 Kutools for Outlook 在文件夹中重命名并保存附件

实际上,"Kutools for Outlook" 中有一个功能——一个方便的 Outlook 插件工具,可以在保存或发送之前重命名所有附件。

Kutools for Outlook:解锁超过100种必备和高级功能!免费享受70多种功能。立即下载并探索免费版本!

免费安装 Kutools for Outlook,然后按照以下步骤操作:

1. 在导航窗格或消息框中激活邮件,点击 "Kutools" > "附件工具" > "所有改名"。
doc rename save attach 2

2. 在弹出的对话框中,输入您为每个附件使用的新名称。点击 "确定",附件已被重命名为新名称。
doc rename save attach 3 

3.右键点击一个附件,选择 "保存附件",点击 "确定" 并选择一个文件夹来保存附件。然后,重命名的附件已保存到文件夹中。
doc rename save attach 5 
doc rename save attach 5