Я получаю набор писем каждый день с приложением сообщения. Что мне нужно сделать, это:
- Открыть файл msg и извлечь имя отправителя и время получения сообщения;
- Сохранить вложение сообщения MSG с именем файла, например, ReceivedTime (ddmmyyyy) _SenderName_AttachmentName
Мой прогресс:
У меня есть код (спасибо гениям здесь), чтобы найти электронную почту Outlook и сохранить вложение в папке назначения. ;
Я застрял в шаге 2 выше ... Не знаю, как извлечь информацию из вложенного сообщения MSG
Может кто-нибудь помочь?
Код, как показано ниже:
Sub SaveOlAttach_Email()
Application.DisplayAlerts = False
Application.AskToUpdateLinks = False
Application.ScreenUpdating = False
Application.DisplayStatusBar = False
Application.EnableEvents = False
Dim isAttachment As Boolean
Dim olFolder As Outlook.MAPIFolder
Dim msg As Outlook.MailItem
Dim att As Outlook.Attachment
Dim fsSaveFolder, sSavePathFS, ssender As String
fsSaveFolder = "C:\Users\xxx"
isAttachment = False
Set olFolder = Outlook.GetNamespace("MAPI").Folders("yyy")
Set olFolder = olFolder.Folders("Inbox")
If olFolder Is Nothing Then Exit Sub
For Each msg In olFolder.Items
If msg.Subject = "zzz" Then
If msg.Attachments.Count > 0 Then
While msg.Attachments.Count > 0
sSavePathFS = fsSaveFolder & Format(olFolder.Items(1).ReceivedTime, "yyyymmdd") & ".msg"
msg.Attachments(1).SaveAsFile sSavePathFS
msg.Attachments(1).Delete
isAttachment = True
Wend
msg.Delete
End If
End If
Next
Application.DisplayAlerts = True
Application.AskToUpdateLinks = True
Application.ScreenUpdating = True
Application.DisplayStatusBar = True
Application.EnableEvents = True
End Sub