Preskoči na glavno vsebino

Outlook: kako ekstrahirati vse URL-je iz enega e-poštnega sporočila

Če e-poštno sporočilo vsebuje na stotine URL-jev, ki jih je treba ekstrahirati v besedilno datoteko, bo kopiranje in lepljenje enega za drugim dolgočasno. Ta vadnica predstavlja VBA-je, ki lahko hitro izvlečejo vse URL-je iz e-pošte.

VBA za ekstrahiranje URL-jev iz enega e-poštnega sporočila v besedilno datoteko

VBA za ekstrahiranje URL-jev iz več e-poštnih sporočil v datoteko Excel

Zavihek Office – omogočite urejanje in brskanje z zavihki v Microsoft Officeu, kar olajša delo
Kutools za Outlook – izboljšajte Outlook s 100+ naprednimi funkcijami za vrhunsko učinkovitost
Izboljšajte svoj Outlook 2021 - 2010 ali Outlook 365 s temi naprednimi funkcijami. Uživajte v obsežnem 60-dnevnem brezplačnem preizkusu in izboljšajte svojo e-poštno izkušnjo!

VBA za ekstrahiranje URL-jev iz enega e-poštnega sporočila v besedilno datoteko

 

1. Izberite e-poštno sporočilo, iz katerega želite ekstrahirati URL-je, in pritisnite druga + F11 tipke za omogočanje Microsoft Visual Basic za aplikacije okno.

2. klik Vstavi > Moduli da ustvarite nov prazen modul, nato kopirajte in prilepite spodnjo kodo v modul.

VBA: ekstrahirajte vse URL-je iz enega e-poštnega sporočila v besedilno datoteko.

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

V tej kodi bo ustvaril novo besedilno datoteko, ki je poimenovana z zadevo e-pošte in postavljena na pot: C:\Uporabniki\Javni\Prenosi, ga lahko spremenite po potrebi.

URL izvlečka dokumenta 1

3. klik Orodja > Reference omogočiti Reference – Projekt 1 pogovorno okno, označite Regularni izrazi za Microsoft VBScript 5.5 potrditveno polje. Kliknite OK.

URL izvlečka dokumenta 1

URL izvlečka dokumenta 1

4. Pritisnite F5 tipko ali kliknite Run gumb za zagon kode, zdaj se prikaže besedilna datoteka in v njej so izvlečeni vsi URL-ji.

URL izvlečka dokumenta 1

URL izvlečka dokumenta 1

Opombe: če ste uporabniki Outlook 2010 in Outlook 365, v 3. koraku označite tudi potrditveno polje Windows Script Host Object Model. Nato kliknite V redu.


VBA za ekstrahiranje URL-jev iz več e-poštnih sporočil v datoteko Excel

 

Če želite izvleči URL-je iz več izbranih e-poštnih sporočil v Excelovo datoteko, vam lahko pomaga spodnja koda VBA.

1. Izberite e-poštno sporočilo, iz katerega želite ekstrahirati URL-je, in pritisnite druga + F11 tipke za omogočanje Microsoft Visual Basic za aplikacije okno.

2. klik Vstavi > Moduli da ustvarite nov prazen modul, nato kopirajte in prilepite spodnjo kodo v modul.

VBA: ekstrahirajte vse URL-je iz več e-poštnih sporočil v datoteko 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

V tej kodi izvleče vse hiperpovezave in ustrezna prikazna besedila ter teme e-pošte.

URL izvlečka dokumenta 1

3. klik Orodja > Reference omogočiti Reference – Projekt 1 pogovorno okno, označite Knjižnica predmetov Microsoft Excel 16.0 in Knjižnica predmetov Microsoft Word 16.0 potrditvena polja. Kliknite OK.

URL izvlečka dokumenta 1

URL izvlečka dokumenta 1

4. Nato postavite kazalec v kodo VBA in pritisnite F5 tipko ali kliknite Run gumb za zagon kode, zdaj se prikaže delovni zvezek in vsi URL-ji so izvlečeni vanj, nato ga lahko shranite v mapo.

URL izvlečka dokumenta 1

Opombe: vsi zgornji VBA izvlečejo vse vrste hiperpovezav.


Najboljša pisarniška orodja za produktivnost

Kutools za Outlook - Več kot 100 zmogljivih funkcij za nadgradnjo vašega Outlooka

🤖 AI poštni pomočnik: Takojšnja profesionalna e-poštna sporočila z umetno inteligenco – z enim klikom do genialnih odgovorov, popoln ton, večjezično znanje. Preoblikujte pošiljanje e-pošte brez napora! ...

📧 Avtomatizacija e-pošte: Odsoten (na voljo za POP in IMAP)  /  Načrtujte pošiljanje e-pošte  /  Samodejna CC/BCC po pravilih pri pošiljanju e-pošte  /  Samodejno naprej (napredna pravila)   /  Samodejno dodaj pozdrav   /  E-poštna sporočila več prejemnikov samodejno razdeli na posamezna sporočila ...

📨 Email upravljanje: Enostaven priklic e-pošte  /  Blokiraj prevarantska e-poštna sporočila glede na teme in druge  /  Izbriši podvojena e-poštna sporočila  /  napredno iskanje  /  Združite mape ...

📁 Priloge ProShrani paket  /  Batch Detach  /  Paketno stiskanje  /  Samodejno shranite   /  Samodejno loči  /  Samodejno stiskanje ...

🌟 Vmesnik Magic: 😊Več lepih in kul emojijev   /  Povečajte Outlookovo produktivnost s pogledi z zavihki  /  Minimizirajte Outlook, namesto da bi ga zaprli ...

???? Čudeži z enim klikom: Odgovori vsem z dohodnimi prilogami  /   E-poštna sporočila proti lažnemu predstavljanju  /  🕘Pokaži pošiljateljev časovni pas ...

👩🏼‍🤝‍👩🏻 Stiki in koledar: Paketno dodajanje stikov iz izbranih e-poštnih sporočil  /  Razdelite skupino stikov na posamezne skupine  /  Odstranite opomnike za rojstni dan ...

Over 100 Lastnosti Čakajte na svoje raziskovanje! Kliknite tukaj, če želite odkriti več.

 

 

Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations