Outlook : comment extraire toutes les URL d’un seul e-mail
Si un e-mail contient des centaines d’URL à extraire vers un fichier texte, les copier-coller une par une deviendrait une tâche fastidieuse. Ce tutoriel vous présente des macros VBA pour extraire rapidement toutes les URL d’un e-mail.
Macro VBA pour extraire les URL d’un e-mail vers un Fichier texte
Macro VBA pour extraire les URL de plusieurs e-mails vers un fichier Excel
- Améliorez votre productivité par e-mail grâce à la technologie d’IA : répondez rapidement aux messages, rédigez de nouveaux e-mails, traduisez des contenus et bien plus encore.
- Automatisez l’envoi d’e-mails avec CC/BCC automatique, Transfert automatique selon des règles prédéfinies, et envoyez une Réponse automatique (Absent du bureau) sans avoir besoin d’un serveur Exchange…
- Recevez des rappels tels que Demander lors de la réponse à un email avec moi en copie cachée (CCi) lorsque vous répondez à tous alors que vous figurez en copie cachée (BCC), ainsi que Rappel en cas de pièce jointe manquante pour les pièces jointes oubliées…
- Améliorez l’efficacité de vos e-mails avec Répondre avec pièces jointes (tout), Ajout automatique de la formule de politesse ou de la date et de l’heure dans la signature ou l’objet, Répondre à plusieurs e-mails...
- Simplifiez l’envoi d’e-mails avec Rappeler l'email, Outils de pièces jointes (compresser tout, enregistrer automatiquement tout…), Supprimer les doublons et Rapport rapide…
Macro VBA pour extraire les URL d’un e-mail vers un Fichier texte
1. Sélectionnez l’e-mail dont vous souhaitez extraire les URL, puis appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module pour créer un nouveau module vierge, puis copiez-collez le code ci-dessous dedans.
Macro VBA : extrayez toutes les URL d’un e-mail vers un fichier texte.
Sub ExportUrlToTextFileFromEmail()
'UpdatebyExtendoffice20220413
Dim xMail As Outlook.MailItem
Dim xRegExp As RegExp
Dim xMatchCollection As MatchCollection
Dim xMatch As Match
Dim xUrl As String, xSubject As String, xFileName As String
Dim xFs As FileSystemObject
Dim xTextFile As Object
Dim i As Integer
Dim InvalidArr
On Error Resume Next
If Application.ActiveWindow.Class = olInspector Then
Set xMail = ActiveInspector.CurrentItem
ElseIf Application.ActiveWindow.Class = olExplorer Then
Set xMail = ActiveExplorer.Selection.Item(1)
End If
Set xRegExp = New RegExp
With xRegExp
.Pattern = "(https?[:]//([0-9a-z=\?:/\.&-^!#$;_])*)"
.Global = True
.IgnoreCase = True
End With
If xRegExp.test(xMail.Body) Then
InvalidArr = Array("/", "\", "*", ":", Chr(34), "?", "<", ">", "|")
xSubject = xMail.Subject
For i = 0 To UBound(InvalidArr)
xSubject = VBA.Replace(xSubject, InvalidArr(i), "")
Next i
xFileName = "C:\Users\Public\Downloads\" & xSubject & ".txt"
Set xFs = CreateObject("Scripting.FileSystemObject")
Set xTextFile = xFs.CreateTextFile(xFileName, True)
xTextFile.WriteLine ("Export URLs:" & vbCrLf)
Set xMatchCollection = xRegExp.Execute(xMail.Body)
i = 0
For Each xMatch In xMatchCollection
xUrl = xMatch.SubMatches(0)
i = i + 1
xTextFile.WriteLine (i & ". " & xUrl & vbCrLf)
Next
xTextFile.Close
Set xTextFile = Nothing
Set xMatchCollection = Nothing
Set xFs = Nothing
Set xFolderItem = CreateObject("Shell.Application").NameSpace(0).ParseName(xFileName)
xFolderItem.InvokeVerbEx ("open")
Set xFolderItem = Nothing
End If
Set xRegExp = Nothing
End Sub
Dans ce code, un nouveau fichier texte est créé, nommé d’après l’objet de l’e-mail et enregistré dans le chemin suivant : C:\Users\Public\Downloads ; vous pouvez le modifier selon vos besoins.

3. Cliquez sur Outils > Références pour ouvrir la boîte de dialogue Références – Projet 1, puis cochez la case Microsoft VBScript Regular Expressions 5,5. Cliquez ensuite sur OK.


4. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter le code ; un fichier texte s’ouvre alors, contenant toutes les URL extraites.


Remarque : si vous utilisez Outlook 2010 ou Outlook 365, veuillez également cocher la case Windows Script Host Object Modelà l’étape 3, puis cliquez sur OK.
Macro VBA pour extraire les URL de plusieurs e-mails vers un fichier Excel
Si vous souhaitez extraire les URL de plusieurs e-mails sélectionnés vers un fichier Excel, la macro VBA ci-dessous peut vous aider.
1. Sélectionnez un e-mail dont vous souhaitez extraire les URL, puis appuyez sur les touches Alt+F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion>Modulepour créer un nouveau module vide, puis copiez-collez le code ci-dessous dans ce module.
Macro VBA : extraire toutes les URL de plusieurs e-mails vers un fichier Excel
'UpdatebyExtendoffice20220414
Dim xExcel As Excel.Application
Dim xExcelWb As Excel.Workbook
Dim xExcelWs As Excel.Worksheet
Sub ExportAllUrlsToExcelFromMultipleEmails()
Dim xMail As MailItem
Dim xSelection As Selection
Dim xWordDoc As Word.Document
Dim xHyperlink As Word.Hyperlink
On Error Resume Next
Set xSelection = Outlook.Application.ActiveExplorer.Selection
If (xSelection Is Nothing) Then Exit Sub
Set xExcel = CreateObject("Excel.Application")
Set xExcelWb = xExcel.Workbooks.Add
Set xExcelWs = xExcelWb.Sheets(1)
xExcelWb.Activate
With xExcelWs
.Range("A1") = "Subject"
.Range("B1") = "DisplayText"
.Range("C1") = "Link"
End With
With xExcelWs.Range("A1", "C1").Font
.Bold = True
.Size = 12
End With
For Each xMail In xSelection
Set xWordDoc = xMail.GetInspector.WordEditor
If xWordDoc.Hyperlinks.Count > 0 Then
For Each xHyperlink In xWordDoc.Hyperlinks
Call ExportToExcelFile(xMail, xHyperlink)
Next
End If
Next
xExcelWs.Columns("A:C").AutoFit
xExcel.Visible = True
End Sub
Sub ExportToExcelFile(curMail As MailItem, curHyperlink As Word.Hyperlink)
Dim xRow As Integer
xRow = xExcelWs.Range("A" & xExcelWs.Rows.Count).End(xlUp).Row + 1
With xExcelWs
.Cells(xRow, 1) = curMail.Subject
.Cells(xRow, 2) = curHyperlink.TextToDisplay
.Cells(xRow, 3) = curHyperlink.Address
End With
End Sub
Ce code extrait tous les liens hypertexte ainsi que le Texte d‹affichage et le Objet de l›email correspondants.

3. Cliquez sur Outils > Références pour ouvrir la boîte de dialogue Références – Projet 1, puis cochez les cases Microsoft Excel 16,0 Object Library et Microsoft Word 16,0 Object Library. Cliquez ensuite sur OK.


4. Placez ensuite le curseur dans le code VBA, puis appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour lancer le code : un classeur s’ouvre alors, contenant toutes les URL extraites, que vous pouvez enregistrer dans un dossier.

Remarque : toutes les macros VBA ci-dessus extraient tous les types de liens hypertexte.
Meilleurs outils de productivité Office
Découvrez la toute nouvelle Kutools pour Outlook avec 100+ fonctionnalités incroyables !Cliquez pour télécharger dès maintenant !
📧Automatisation des e-mails : Réponse automatique (disponible pour POP et IMAP) / Planification de l’envoi d’e-mails / CC/BCC automatique selon des règles lors de l’envoi d’e-mails / Transfert automatique (règle avancée) / Ajout automatique de formules de politesse / Division automatique des e-mails à plusieurs destinataires en messages individuels...
📨Gestion des e-mails : Rappeler un e-mail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les e-mails en double / Recherche avancée / Organiser vos dossiers…
📁Pièces jointes Pro : Enregistrer en lot / Détacher en lot / Compresser en lot / Enregistrement automatique / Détachement automatique / Compression automatique…
🌟Magie de l’interface : 😊 Encore plus d’emojis jolis et stylés / Vous prévient à l’arrivée d’e-mails importants / Réduire Outlook au lieu de le fermer...
👍Merveilles en un clic : Répondre à tous avec pièces jointes / E-mails anti-hameçonnage / 🕘 Afficher le fuseau horaire – Heure actuelle de l’expéditeur…
👩🏼🤝👩🏻Contacts et calendrier : Créer en lot : ajouter un contact à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire…
Utilisez Kutools dans votre langue préférée – compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de 40 autres langues !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Fortement recommandé : Kutools for Office (5-en-1)
Un seul clic pour télécharger cinq programmes d’installationen une fois —Kutools pour Excel, Outlook, Word, PowerPointet Office Tab Pro.Cliquez pour télécharger dès maintenant !
- ✅Commodité en un clic : téléchargez les cinq packs d’installation en une seule action.
- 🚀Prêt à relever toutes vos tâches Office : installez les compléments dont vous avez besoin, exactement quand vous en avez besoin.
- 🧰Inclus: Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools for PowerPoint