Code VBA pour enregistrer une pièce jointe (fichier excel) à partir d'une messagerie Outlook qui était à l'intérieur un autre e-mail en tant que pièce jointe
J'ai le code qui enregistre les pièces jointes dans un message dans un dossier Outlook.
Mon script fonctionne si l'e-mail avec une pièce jointe, mais ne fonctionnera pas si le courriel a été envoyé en tant que pièce jointe avec une pièce jointe.
Dans ce cas mes e-mails contient d'autres e-mails en tant que pièces jointes (à partir d'une auto à la règle). Intégré à l'e-mail des pièces jointes contenant des fichiers excel.
Veuillez voir mon vba ci-dessous:
Public Sub SaveOlAttachments()
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
On Error GoTo crash
fsSaveFolder = "C:\Documents and Settings\user\Desktop\"
isAttachment = False
Set olFolder = Outlook.GetNamespace("MAPI").Folders("...email server...")
Set olFolder = olFolder.Folders("Inbox")
If olFolder Is Nothing Then Exit Sub
For Each msg In olFolder.Items
If UCase(msg.Subject) = "TEST EMAIL WITH ATTACHMENT" Then
If msg.Attachments.Count > 0 Then
While msg.Attachments.Count > 0
sSavePathFS = fsSaveFolder & msg.Attachments(1).Filename
msg.Attachments(1).SaveAsFile sSavePathFS
msg.Attachments(1).Delete
isAttachment = True
Wend
msg.Delete
End If
End If
Next
crash:
If isAttachment = True Then Call findFiles(fsSaveFolder)
End Sub
Toute aide serait grandement appréciée.
OriginalL'auteur JAM_864 | 2011-10-25
Vous devez vous connecter pour publier un commentaire.
Le code ci-dessous utilise cette approche pour travailler sur l'e-mail en tant que pièce jointe
"C:\temp\KillMe.msg"
.CreateItemFromTemplate
est utilisé pour accéder au fichier sauvegardé comme un nouveau message (msg2)fsSaveFolder
Noter que, comme je n'ai pas eu votre olFolder structure, Windoes version,
Outlook
variable etc j'ai dû ajouter dans mes propres chemins d'accès aux fichiers et dossiers Outlook à tester. Vous aurez besoin de modifier cesOriginalL'auteur brettdj