Outlook : Comment extraire toutes les URL d'un email
Si un email contient des centaines d'URL à extraire dans un fichier texte, les copier-coller une par une serait une tâche fastidieuse. Ce tutoriel présente des VBAs qui peuvent rapidement extraire toutes les URL d'un email.
VBA pour extraire les URL d'un email vers un fichier texte
VBA pour extraire les URL de plusieurs emails vers un fichier Excel
- Améliorez votre productivité email grâce à la technologie IA, vous permettant de répondre rapidement aux emails, de rédiger de nouveaux messages, de traduire des emails, et plus encore.
- Automatisez l'envoi d'emails avec CC/BCC automatique, Transfert automatique selon des règles ; envoyez une Réponse automatique (Hors du bureau) sans nécessiter un serveur Exchange...
- Recevez des rappels comme Demander lors de la réponse à un email avec moi en copie cachée (CCi) lorsque vous êtes dans la liste BCC, et Rappel en cas de pièces jointes manquantes pour les pièces jointes oubliées...
- Améliorez l'efficacité des emails avec Répondre (à tous) Avec Pièces jointes, Ajout automatique de Salutation ou Date & Heure dans la signature ou l'objet, Répondre à plusieurs emails...
- Rationalisez l'envoi d'emails avec Rappeler les emails, Outils de pièces jointes (Compresser toutes les pièces jointes, Enregistrer automatiquement toutes les pièces jointes...), Supprimer les doublons, et Rapport rapide...
VBA pour extraire les URL d'un email vers un fichier texte
1. Sélectionnez l'email dont vous souhaitez extraire les URL, puis appuyez sur les touches Alt + F11 pour activer la fenêtre Microsoft Visual Basic for Applications.
2. Cliquez sur Insérer > Module pour créer un nouveau module vierge, puis copiez et collez le code ci-dessous dans le module.
VBA : extraire toutes les URL d'un email 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 sera créé avec le nom du sujet de l'email et placé 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, cochez la case Microsoft VBScript Regular Expressions 5.5, puis cliquez sur OK.


4. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter le code. Un fichier texte apparaît maintenant, contenant toutes les URL extraites.


Remarque : si vous êtes utilisateur d'Outlook 2010 et Outlook 365, veuillez également cocher la case Windows Script Host Object Model à l'étape 3. Ensuite, cliquez sur OK.
VBA pour extraire les URL de plusieurs emails vers un fichier Excel
Si vous souhaitez extraire les URL de plusieurs emails sélectionnés vers un fichier Excel, le code VBA ci-dessous peut vous aider.
1. Sélectionnez l'email dont vous souhaitez extraire les URL, puis appuyez sur les touches Alt + F11 pour activer la fenêtre Microsoft Visual Basic for Applications.
2. Cliquez sur Insérer > Module pour créer un nouveau module vierge, puis copiez et collez le code ci-dessous dans le module.
VBA : extraire toutes les URL de plusieurs emails 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 hyperliens ainsi que les textes affichés correspondants et les sujets des emails.

3. Cliquez sur Outils > Références pour ouvrir la boîte de dialogue Références – Projet 1, cochez les cases Bibliothèque d'objets Microsoft Excel 16.0 et Bibliothèque d'objets Microsoft Word 16.0. Cliquez sur OK.


4. Placez ensuite le curseur dans le code VBA, appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter le code. Un classeur apparaît maintenant, contenant toutes les URL extraites, que vous pouvez ensuite enregistrer dans un dossier.

Remarque : toutes les VBAs ci-dessus extraient tous les types d'hyperliens.
Meilleurs outils de productivité pour Office
Dernière nouvelle : Kutools pour Outlook lance sa version gratuite !
Découvrez le tout nouveau Kutools pour Outlook avec plus de100 fonctionnalités incroyables ! Cliquez pour télécharger dès maintenant !
📧 Automatisation des E-mails : Réponse automatique (disponible pour POP et IMAP) / Programmer l’envoi d’un e-mail / CC/BCC automatique par règle lors de l’envoi / Transfert automatique (règle avancée) / Ajouter automatiquement une salutation / Diviser automatiquement les e-mails multi-destinataires en messages individuels ...
📨 Gestion des E-mails : Rappeler lemail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les doublons / Recherche Avancée / Organiser les dossiers ...
📁 Pièces jointes Pro : Enregistrement en lot / Détachement en lot / Compression en lot / Enregistrer automatiquement / Détachement automatique / Compression automatique ...
🌟 Interface magique : 😊Plus d’emojis élégants et amusants / Vous rappelle lorsque des e-mails importants arrivent / Réduire Outlook au lieu de fermer ...
👍 Fonctions en un clic : Répondre à tous avec pièces jointes / E-mails anti-phishing / 🕘Afficher le fuseau horaire de l’expéditeur ...
👩🏼🤝👩🏻 Contacts & Calendrier : Ajouter en lot des contacts à 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 – prend en charge l’Anglais, l’Espagnol, l’Allemand, le Français, le Chinois et plus de40 autres !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Recommandé vivement : Kutools pour Office (5-en-1)
Un clic pour télécharger cinq installateurs en une seule fois — Kutools pour Excel, Outlook, Word, PowerPoint et Office Tab Pro. Cliquez pour télécharger dès maintenant !
- ✅ Praticité en un clic : téléchargez les cinq packages d’installation en une seule action.
- 🚀 Prêt pour toutes les tâches Office : installez les compléments dont vous avez besoin, quand vous en avez besoin.
- 🧰 Inclus : Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools pour PowerPoint