Извлекать вложения MSG из электронной почты Outlook - PullRequest
1 голос
/ 30 июня 2011

У меня есть следующий код VBA, который сохраняет вложения в электронном письме.

Это прекрасно работает для .docx, .jpg и т. Д., Но мне нужно использовать его для извлечения нескольких вложений .msg, которые не работают.

Код

Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String

saveFolder = "C:\Test\"
For Each objAtt In itm.Attachments
stFileName = saveFolder & "\" & objAtt.DisplayName
i = 0
JumpHere:
If Dir(stFileName) = "" Then
objAtt.SaveAsFile stFileName
Else
i = i + 1
stFileName = saveFolder & "\" & i & " - " & objAtt.DisplayName
GoTo JumpHere
End If
Set objAtt = Nothing
Next
End Sub

Ошибка касается строки - If Dir (stFileName) = "" Тогда

1 Ответ

1 голос
/ 30 июня 2011

После нашего чата, вот окончательный код:

Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
Dim objAtt As Outlook.Attachment 
Dim saveFolder As String 
Dim i As Integer 

saveFolder = "C:\Test\" 
For Each objAtt In itm.Attachments 
  stFileName = saveFolder & objAtt.FileName 
  i = 0 
  'Loop to find the first available filename 
  Do While Dir(stFileName) <> "" 
    i = i + 1 
    stFileName = saveFolder & i & " - " & objAtt.FileName 
  Loop
  objAtt.SaveAsFile stFileName 
Next 
End Sub

С уважением,

Макс

...