Excel 保存Outlook邮件附件
我想保存电子邮件中的.xlsx附件 我可以保存文件,但默认扩展名不是.xlsx,即使电子邮件有.xlsx附件 即使将其另存为“.xlsx”Excel 保存Outlook邮件附件,excel,vba,outlook,Excel,Vba,Outlook,我想保存电子邮件中的.xlsx附件 我可以保存文件,但默认扩展名不是.xlsx,即使电子邮件有.xlsx附件 即使将其另存为“.xlsx”OutlookMail.Attachments.Item(1).SaveAsFile path&“.xlsx”文件也无法打开 Set OutlookApp = New Outlook.Application Set OutlookNamespace = OutlookApp.GetNamespace("MAPI") Set Folder = OutlookNa
OutlookMail.Attachments.Item(1).SaveAsFile path&“.xlsx”
文件也无法打开
Set OutlookApp = New Outlook.Application
Set OutlookNamespace = OutlookApp.GetNamespace("MAPI")
Set Folder = OutlookNamespace.GetDefaultFolder(olFolderInbox).Folders("WeeklyMail")
Dim path As String
path = "G:\" & Format(Date, "DD-MM-YYYY") & "-"
For Each OutlookMail In Folder.Items
If OutlookMail.ReceivedTime >= Range("A1").Value Then
title = OutlookMail.subject
If InStr(title, "[Hello]") Then
OutlookMail.Attachments.Item(1).SaveAsFile path
End If
End If
Next OutlookMail
@Helowxi,您的path变量似乎根本不包含文件名: 退房[ 将所需的文件名添加到变量中,例如
path = "G:\" & Format(Date, "DD-MM-YYYY") & "-MyFileName.xlsx"
试试看。您可以使用
OutlookMail.Attachments.Item(1).FileName
获取附件的文件名和扩展名
下面的代码将获得文件扩展名并保存。我使用instrrev作为预防措施,防止文件名带有两个句点
@EarlyBird2指出缺少的文件名是正确的
Dim attchFileName作为字符串
Dim myFileName作为字符串
Dim FileExt作为字符串
myFileName=“一些文件”
attchFileName=OutlookMail.Attachments.Item(1).文件名
FileExt=Right(attchFileName,len(attchFileName)-instrrev(attchFileName,“.”)
OutlookMail.Attachments.Item(1).SaveAsFile path&“&myFileName&FileExt