Outlook: Sådan udtrækkes alle URL'er fra én e-mail
Hvis en e-mail indeholder hundredvis af URL'er, der skal udpakkes til en tekstfil, vil det være en kedelig opgave at kopiere og indsætte dem én efter én. Denne vejledning introducerer VBA'er, der hurtigt kan udtrække alle URL'er fra en e-mail.
VBA til at udtrække URL'er fra én e-mail til en tekstfil
VBA til at udtrække URL'er fra flere e-mails til en Excel-fil
- Automatiser e-mail med Auto CC / BCC, Automatisk videresendelse ved regler; sende Auto svar (Ikke til stede) uden at kræve en udvekslingsserver...
- Få påmindelser som BCC Advarsel når du svarer til alle, mens du er på BCC-listen, og Påmind, når du mangler vedhæftede filer for glemte vedhæftede filer...
- Forbedre e-mail-effektiviteten med Svar (alle) med vedhæftede filer, Tilføj automatisk hilsen eller dato og tid til signatur eller emne, Besvar flere e-mails...
- Strømline e-mail med Genkald e-mails, Vedhæftningsværktøjer (Komprimer alle, Gem alt automatisk...), Fjern duplikaterog Hurtig rapport...
VBA til at udtrække URL'er fra én e-mail til en tekstfil
1. Vælg en e-mail, som du vil udpakke URL'erne, og tryk på andre + F11 taster for at aktivere Microsoft Visual Basic til applikationer vindue.
2. klik indsatte > Moduler for at oprette et nyt tomt modul, kopier og indsæt derefter nedenstående kode til modulet.
VBA: udtræk alle URL'er fra én e-mail til en tekstfil.
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
I denne kode vil den oprette en ny tekstfil, som er navngivet med e-mail-emnet og placeret i stien: C:\Brugere\Offentlige\Downloads, kan du ændre det efter behov.
3. klik Værktøjer > Referencer at muliggøre Referencer – Projekt 1 dialogboks skal du markere Microsoft VBScript Regular Expressions 5.5 afkrydsningsfelt. Klik på OK.
4. Trykke F5 tast eller klik Kør knappen for at køre koden, nu popper en tekstfil ud, og alle URL'er er blevet udtrukket i den.
Bemærk: hvis du er brugere af Outlook 2010 og Outlook 365, skal du også markere afkrydsningsfeltet Windows Script Host Object Model i trin 3. Klik derefter på OK.
VBA til at udtrække URL'er fra flere e-mails til en Excel-fil
Hvis du vil udtrække URL'er fra flere udvalgte e-mails til en Excel-fil, kan nedenstående VBA-kode hjælpe dig.
1. Vælg en e-mail, som du vil udpakke URL'erne, og tryk på andre + F11 taster for at aktivere Microsoft Visual Basic til applikationer vindue.
2. klik indsatte > Moduler for at oprette et nyt tomt modul, kopier og indsæt derefter nedenstående kode til modulet.
VBA: Udtræk alle URL'er fra flere e-mails til en Excel-fil
'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
I denne kode udtrækker den alle hyperlinks og de tilsvarende displaytekster og e-mail-emner.
3. klik Værktøjer > Referencer at muliggøre Referencer – Projekt 1 dialog, sæt kryds Microsoft Excel 16.0 Objektbibliotek , Microsoft Word 16.0-objektbibliotek afkrydsningsfelter. Klik OK.
4. Placer derefter markøren inden for VBA-koden, tryk på F5 tast eller klik Kør knappen for at køre koden, nu popper en projektmappe ud, og alle URL'er er blevet udtrukket i den, så kan du gemme den i en mappe.
Bemærk: alle ovenstående VBA'er uddrager alle typer hyperlinks.
Bedste kontorproduktivitetsværktøjer
Kutools til Outlook - Over 100 kraftfulde funktioner til at superlade din Outlook
🤖 AI Mail Assistant: Øjeblikkelige pro-e-mails med AI-magi – et klik for geniale svar, perfekt tone, flersproget beherskelse. Forvandl e-mailing ubesværet! ...
📧 Email Automation: Ikke til stede (tilgængelig til POP og IMAP) / Planlæg Send e-mails / Auto CC/BCC efter regler ved afsendelse af e-mail / Automatisk videresendelse (avancerede regler) / Tilføj automatisk hilsen / Opdel automatisk e-mails med flere modtagere i individuelle meddelelser ...
📨 Email Management: Genkald nemt e-mails / Bloker svindel-e-mails af emner og andre / Slet duplikerede e-mails / Avanceret søgning / Konsolider mapper ...
📁 Vedhæftede filer Pro: Batch Gem / Batch adskilles / Batch komprimere / Automatisk gem / Automatisk afmontering / Automatisk komprimering ...
🌟 Interface Magic: 😊 Flere smukke og seje emojis / Boost din Outlook-produktivitet med fanebaserede visninger / Minimer Outlook i stedet for at lukke ...
👍 Wonders med et enkelt klik: Besvar alle med indgående vedhæftede filer / Anti-phishing e-mails / 🕘Vis afsenderens tidszone ...
👩🏼🤝👩🏻 Kontakter og kalender: Batch Tilføj kontakter fra udvalgte e-mails / Opdel en kontaktgruppe til individuelle grupper / Fjern fødselsdagspåmindelser ...
Over 100 Features Afvent din udforskning! Klik her for at finde mere.