XL 2019 Extraire propriété d'un mail (Outlook eml)

  • Initiateur de la discussion Initiateur de la discussion re4
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

re4

XLDnaute Occasionnel
Bonjour,
Ma connaissance du VBA étant limité, j'ai fait appel à une AI qui m'a proposé le code vba ci-dessous pour extraire les propriétés de tous les mails d'un dossier avec l'extension (*.eml), le fichier csv est bien créé mais il est vide !
Je fais appel à un humain (on a encore une longueur d'avance) pour résoudre mon petit problème.
Bonne journée

VB:
Sub ExtraireProprietesEmails()

    Dim fso As Object
    Dim folder As Object
    Dim emailFile As Object
    Dim txtFile As Object
    Dim line As String

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set txtFile = fso.CreateTextFile("propriétés_emails.csv")
    Set folder = fso.GetFolder("C:\Users\U\Downloads\test mail")

    For Each emailFile In folder.Files
        If LCase(Right(emailFile.Name, 4)) = ".eml" Then  ' Filtrer les fichiers .eml uniquement
            ' Extraire les propriétés du fichier email courant
            line = emailFile.Name & ", " ' Ajouter le nom du fichier aux propriétés
            ' ... (code d'extraction des propriétés du fichier email)
            txtFile.WriteLine line
        End If
    Next emailFile

    txtFile.Close
    MsgBox "Propriétés des e-mails extraites avec succès dans le fichier propriétés_emails.csv"

End Sub
 
Dernière édition:
Bonjour re4,

Les fichiers eml semblent être de simples fichiers texte.
Du coup, on peut identifier assez facilement les infos suivantes :
  • émetteur
  • récepteur
  • sujet
  • date
FichierEML.png

C'est assurément faisable en VBA, je te conseille de regarder du coté de l'objet TextStream qui permet de lire des fichiers texte, notamment ligne par ligne (aide en ligne).

Sinon, c'est aussi faisable avec PowerQuery.
Tu trouveras un exemple ci-joint.

A+
 

Pièces jointes

Bonjour mromain,
je n'ai pas compris comment fonctionne ton fichier (pas de macro et pas de formule visible)
powequery, je ne maitrise pas non plus...
Le but, si je me suis bien fait comprendre est d'extraire les propriétés d'un ensemble de mail eml d'un repertoire pour les envoyer au service spam de provider.
La macro jointe semblait presque je faire mais le fichier est vide.
Je suis preneur de toutes solutions mais ça doit extraire l ensemble d'un repertroire.
Je peux le faire manuellement mais c'est long ,-)
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Code VBA
Réponses
7
Affichages
821
Réponses
2
Affichages
815
Réponses
6
Affichages
741
Retour