Outlook VBA: enregistrer pièces-jointes de plusieurs mails
Donou12
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Donou12 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Donou12 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici mon problème: je souhaite pouvoir enregistrer les pièces jointes de plusieurs mails en même temps dans un dossier donné. (le nom du dossier est libre, disons "nouveau dossier").
J'ai déjà parcouru tous les sujets sur la question sur le net, la seule macro qui entraine une modification quelque part est celle-ci: (je l'ai mise dans un module)
Problème:
-il y a bien un msgbox qui apparaît (il faut à ce moment renseigner l'emplacement du dossier dans lequel on veut enregistrer les PJ), mais les pièces-jointes ne s'enregistrent pas dans l'emplacement renseigné. Elles s'enregistrent nulle part en fait.
-Le mail est modifié : l'emplacement renseigné dans le msgbox ainsi que le nom de la PJ s'inscrivent alors sur le mail! = JE VEUX PAS
Exemple: Ma PJ s'appelle "Test"
je mets dans le Msgbox mon emplacement cible : C:\Users\Toto\Documents
A la fin de la macro, mon mail comportera le texte : File: C:\Users\Toto\DocumentsTest.pdf
Donc:
1) Je souhaite que la macro tienne compte des mails qui sont sélectionnés uniquement.
2) Je souhaite enregistrer les pièces-jointes dans un dossier situé sur le bureau (le msgbox où il faut indiquer l'emplacement peut-être conservé, je pourrai ensuite ajouter par défaut le chemin d'un dossier sur le bureau)
3) Je souhaite garder intacts les mails et les PJ
J'ai pensé à modifier le code pour réaliser des copier/coller, mais sans succès.
Je vous remercie par avance et vous souhaite de très bonnes fêtes!
Donou
Voici mon problème: je souhaite pouvoir enregistrer les pièces jointes de plusieurs mails en même temps dans un dossier donné. (le nom du dossier est libre, disons "nouveau dossier").
J'ai déjà parcouru tous les sujets sur la question sur le net, la seule macro qui entraine une modification quelque part est celle-ci: (je l'ai mise dans un module)
Sub SaveAttachment()
'Declaration
Dim myItems, myItem, myAttachments, myAttachment As Object
Dim myOrt As String
Dim myOlApp As New Outlook.Application
Dim myOlExp As Outlook.Explorer
Dim myOlSel As Outlook.Selection
Dim i As Integer
'Boîte de dialogue simple pour le chemin de sauvegarde
myOrt = InputBox("Destination", "Save Attachments", "C:\PJ\")
On Error Resume Next
'Actions sur les objets sélectionnés
Set myOlExp = myOlApp.ActiveExplorer
Set myOlSel = myOlExp.Selection
'boucle
For Each myItem In myOlSel
Set myAttachments = myItem.Attachments
If myAttachments.Count > 0 Then
'for all attachments do...
For i = 1 To myAttachments.Count
'save them to destination
myAttachments(i).SaveAsFile myOrt & _
myAttachments(i).DisplayName
myItem.Body = myItem.Body & _
"File: " & myOrt & _
myAttachments(i).DisplayName & vbCrLf
Next i
End If
Next
Set myItems = Nothing
Set myItem = Nothing
Set myAttachments = Nothing
Set myAttachment = Nothing
Set myOlApp = Nothing
Set myOlExp = Nothing
Set myOlSel = Nothing
End Sub
Problème:
-il y a bien un msgbox qui apparaît (il faut à ce moment renseigner l'emplacement du dossier dans lequel on veut enregistrer les PJ), mais les pièces-jointes ne s'enregistrent pas dans l'emplacement renseigné. Elles s'enregistrent nulle part en fait.
-Le mail est modifié : l'emplacement renseigné dans le msgbox ainsi que le nom de la PJ s'inscrivent alors sur le mail! = JE VEUX PAS
Exemple: Ma PJ s'appelle "Test"
je mets dans le Msgbox mon emplacement cible : C:\Users\Toto\Documents
A la fin de la macro, mon mail comportera le texte : File: C:\Users\Toto\DocumentsTest.pdf
Donc:
1) Je souhaite que la macro tienne compte des mails qui sont sélectionnés uniquement.
2) Je souhaite enregistrer les pièces-jointes dans un dossier situé sur le bureau (le msgbox où il faut indiquer l'emplacement peut-être conservé, je pourrai ensuite ajouter par défaut le chemin d'un dossier sur le bureau)
3) Je souhaite garder intacts les mails et les PJ
J'ai pensé à modifier le code pour réaliser des copier/coller, mais sans succès.
Je vous remercie par avance et vous souhaite de très bonnes fêtes!
Donou
A voir également:
- Macro outlook enregistrer pièce jointe
- Audacity enregistrer son pc - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Pièce d'identité - Accueil - Services publics
- 1 pièce jointe - Guide
- Enregistrer un mail outlook - Guide
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir, la macro travaille sur tous les mails, pas uniquement sue ceux qui sont sélectionnés?
La macro fonctionne actuellement que sur 1 seul mail (même lorsque plusieurs sont sélectionnés).
C'est à dire que l'inscription File: C:\Users\Toto\DocumentsTest.pdf ne s'inscrit que sur un seul mail à la fois.