Outlook: So extrahieren Sie alle URLs aus einer E-Mail
Wenn eine E-Mail Hunderte von URLs enthält, die in eine Textdatei extrahiert werden müssen, ist es eine mühsame Aufgabe, sie einzeln zu kopieren und einzufügen. Dieses Tutorial stellt VBAs vor, die schnell alle URLs aus einer E-Mail extrahieren können.
VBA zum Extrahieren von URLs aus einer E-Mail in eine Textdatei
VBA zum Extrahieren von URLs aus mehreren E-Mails in eine Excel-Datei
- Automatisieren Sie den E-Mail-Versand mit Auto CC / BCC, Automatische Weiterleitung nach Regeln; schicken Automatische Antwort (Abwesend) ohne dass ein Exchange-Server erforderlich ist ...
- Erhalten Sie Erinnerungen wie BCC-Warnung wenn Sie auf alle antworten, während Sie sich in der BCC-Liste befinden, und Bei fehlenden Anhängen erinnern für vergessene Anhänge...
- Verbessern Sie die E-Mail-Effizienz mit (Allen) mit Anhängen antworten, Begrüßung oder Datum und Uhrzeit automatisch zur Signatur oder zum Betreff hinzufügen, Beantworten Sie mehrere E-Mails...
- Optimieren Sie den E-Mail-Versand mit E-Mails abrufen, Anbaugeräte (Alles komprimieren, Alles automatisch speichern...), Duplikate entfernen und Kurzbericht...
VBA zum Extrahieren von URLs aus einer E-Mail in eine Textdatei
1. Wählen Sie eine E-Mail aus, deren URLs Sie extrahieren möchten, und drücken Sie Andere + F11 zu aktivierende Tasten Microsoft Visual Basic für Applikationen Fenster.
2 Klicken Insert > Modul Um ein neues leeres Modul zu erstellen, kopieren Sie den folgenden Code und fügen Sie ihn in das Modul ein.
VBA: Extrahieren Sie alle URLs aus einer E-Mail in eine Textdatei.
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
In diesem Code wird eine neue Textdatei erstellt, die mit dem E-Mail-Betreff benannt und im Pfad platziert wird: C:\Benutzer\Öffentlich\Downloads, Sie können es nach Bedarf ändern.
3 Klicken Tools > Bibliographie ermöglichen Referenzen – Projekt 1 Dialog, kreuzen Sie das an Reguläre Microsoft VBScript-Ausdrücke 5.5 Kontrollkästchen. Klicken OK.
4. Drücken Sie F5 Taste oder klicken Führen Sie Schaltfläche, um den Code auszuführen, jetzt erscheint eine Textdatei, in der alle URLs extrahiert wurden.
NoteHinweis: Wenn Sie Benutzer von Outlook 2010 und Outlook 365 sind, aktivieren Sie bitte auch das Kontrollkästchen Windows Script Host Object Model in Schritt 3. Klicken Sie dann auf OK.
VBA zum Extrahieren von URLs aus mehreren E-Mails in eine Excel-Datei
Wenn Sie URLs aus mehreren ausgewählten E-Mails in eine Excel-Datei extrahieren möchten, kann Ihnen der folgende VBA-Code helfen.
1. Wählen Sie eine E-Mail aus, deren URLs Sie extrahieren möchten, und drücken Sie Andere + F11 zu aktivierende Tasten Microsoft Visual Basic für Applikationen Fenster.
2 Klicken Insert > Modul Um ein neues leeres Modul zu erstellen, kopieren Sie den folgenden Code und fügen Sie ihn in das Modul ein.
VBA: Extrahieren Sie alle URLs aus mehreren E-Mails in eine Excel-Datei
'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
In diesem Code extrahiert es alle Hyperlinks und die entsprechenden Anzeigetexte und die E-Mail-Betreffs.
3 Klicken Tools > Bibliographie ermöglichen Referenzen – Projekt 1 Dialog, ankreuzen Microsoft Excel 16.0-Objektbibliothek und Microsoft Word 16.0-Objektbibliothek Kontrollkästchen. Klicken OK.
4. Platzieren Sie dann den Cursor innerhalb des VBA-Codes und drücken Sie F5 Taste oder klicken Führen Sie Schaltfläche, um den Code auszuführen, jetzt erscheint eine Arbeitsmappe und alle URLs wurden darin extrahiert, dann können Sie sie in einem Ordner speichern.
Note: Alle oben genannten VBAs extrahieren alle Arten von Hyperlinks.
Beste Office-Produktivitätstools
Kutools for Outlook - Über 100 leistungsstarke Funktionen zur Optimierung Ihres Outlooks
🤖 KI-Mail-Assistent: Sofortige Profi-E-Mails mit KI-Magie – geniale Antworten mit einem Klick, perfekter Ton, mehrsprachige Beherrschung. Verwandeln Sie den E-Mail-Versand mühelos! ...
📧 E-Mail Automation: Abwesenheit (verfügbar für POP und IMAP) / Planen Sie das Senden von E-Mails / Automatisches CC/BCC nach Regeln beim E-Mail-Versand / Automatische Weiterleitung (erweiterte Regeln) / Begrüßung automatisch hinzufügen / Teilen Sie E-Mails mit mehreren Empfängern automatisch in einzelne Nachrichten auf ...
📨 E-Mail-Management: E-Mails einfach abrufen / Blockieren Sie betrügerische E-Mails nach Betreff und anderen / Doppelte E-Mails löschen / Erweiterte Suche / Ordner konsolidieren ...
📁 Anhänge Pro: Batch speichern / Stapeltrennung / Stapelkomprimierung / Automatisches Speichern / Automatische Trennung / Automatische Komprimierung ...
???? Schnittstellenmagie: 😊Mehr hübsche und coole Emojis / Steigern Sie Ihre Outlook-Produktivität mit Registerkartenansichten / Ausblick minimieren statt schließen ...
👍 Wunder mit einem Klick: Allen mit eingehenden Anhängen antworten / Anti-Phishing-E-Mails / 🕘Zeitzone des Absenders anzeigen ...
👩🏼🤝👩🏻 Kontakte und Kalender: Fügen Sie Kontakte aus ausgewählten E-Mails im Stapel hinzu / Teilen Sie eine Kontaktgruppe in einzelne Gruppen auf / Geburtstagserinnerungen entfernen ...
Auf über 100 Eigenschaften Warten Sie auf Ihre Erkundung! Klicken Sie hier, um mehr zu erfahren.