Skip to main content

Outlook: Come estrarre tutti gli URL da un'email

Author: Sun Last Modified: 2025-08-06

Se un'email contiene centinaia di URL che devono essere estratti in un file di testo, copiarli e incollarli uno per uno sarà un lavoro tedioso. Questo tutorial introduce delle VBA che possono estrarre rapidamente tutti gli URL da un'email.

VBA per estrarre gli URL da un'email a un file di testo

VBA per estrarre gli URL da più email in un file Excel

Office Tab - Abilita la modifica e la navigazione a schede in Microsoft Office, rendendo il lavoro un gioco da ragazzi
Sblocca Kutools per Outlook ora e goditi oltre 100 funzionalità con accesso illimitato per sempre
Potenzia il tuo Outlook 2024 - 2010 o Outlook 365 con queste funzionalità avanzate. Goditi oltre 100 potenti funzionalità ed eleva la tua esperienza email!

VBA per estrarre gli URL da un'email a un file di testo

 

1. Seleziona l'email da cui vuoi estrarre gli URL e premi i tasti Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo per creare un nuovo modulo vuoto, quindi copia e incolla il codice sottostante nel modulo.

VBA: estrai tutti gli URL da un'email a un file di testo.

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 questo codice, verrà creato un nuovo file di testo denominato con l'oggetto dell'email e posizionato nel percorso: C:\Users\Public\Downloads, puoi modificarlo come necessario.

steps on extracting all URLs from one email

3. Clicca su Strumenti > Riferimenti per abilitare la finestra di dialogo Riferimenti – Progetto 1, spunta la casella Microsoft VBScript Regular Expressions 5.5. Clicca OK.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

4. Premi il tasto F5 o clicca sul pulsante Esegui per eseguire il codice; ora apparirà un file di testo e tutti gli URL saranno stati estratti al suo interno.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

Nota: se sei un utente di Outlook 2010 e Outlook 365, assicurati di spuntare anche la casella Windows Script Host Object Model nel Passaggio 3. Poi clicca OK.


VBA per estrarre gli URL da più email in un file Excel

 

Se desideri estrarre gli URL da più email selezionate in un file Excel, il seguente codice VBA può aiutarti.

1. Seleziona l'email da cui vuoi estrarre gli URL e premi i tasti Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo per creare un nuovo modulo vuoto, quindi copia e incolla il codice sottostante nel modulo.

VBA: estrai tutti gli URL da più email in un file 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

In questo codice, vengono estratti tutti i collegamenti ipertestuali, i relativi testi visualizzati e gli oggetti delle email.

steps on extracting all URLs from one email

3. Clicca su Strumenti > Riferimenti per abilitare la finestra di dialogo Riferimenti – Progetto 1, spunta le caselle Microsoft Excel 16.0 Object Library e Microsoft Word 16.0 Object Library. Clicca OK.

steps on extracting all URLs from one email
steps on extracting all URLs from one email

4. Quindi posiziona il cursore all'interno del codice VBA, premi il tasto F5 o clicca sul pulsante Esegui per eseguire il codice; ora apparirà una cartella di lavoro e tutti gli URL saranno stati estratti al suo interno, dopodiché potrai salvarla in una cartella.

steps on extracting all URLs from one email

Nota: tutte le VBA sopra menzionate estraggono tutti i tipi di collegamenti ipertestuali.


I migliori strumenti per la produttività in Office

Ultime novità: Kutools per Outlook lancia la versione gratuita!

Scopri il nuovo Kutools per Outlook con oltre100 funzionalità incredibili! Clicca per scaricare ora!

🤖 Kutools AI : Sfrutta una tecnologia AI avanzata per gestire le email senza sforzo, tra cui rispondere, riassumere, ottimizzare, estendere, tradurre e scrivere email.

📧 Automazione email: Risposta automatica (disponibile per POP e IMAP) / Programmazione invio email / CC/BCC automatico tramite regola durante l’invio dell’email / Inoltro automatico (Regola avanzata) / Aggiungi saluto automaticamente / Suddivisione automatica delle email con più destinatari in email individuali ...

📨 Gestione email: Richiama Email / Blocca email di truffa tramite Oggetto e altro / Elimina Email duplicate / Ricerca Avanzata / Organizza cartelle ...

📁 Allegati Pro: Salvataggio in batch / Distacco in batch / Compressione in batch / Salvataggio automatico / Distacca automaticamente / Auto Comprimi ...

🌟 Magia dell’interfaccia: 😊Più emoji belle e simpatiche / Ti avvisa quando arrivano email importanti / Minimizza Outlook invece di chiuderlo ...

👍 Meraviglie con un clic: Rispondi a Tutti con Allegati / Email Anti-phishing / 🕘Mostra il fuso orario del mittente ...

👩🏼‍🤝‍👩🏻 Contatti e Calendario: Aggiunta massiva dei contatti dalle email selezionate / Dividi un Gruppo di Contatti in gruppi individuali / Rimuovi promemoria di compleanno ...

Usa Kutools nella lingua che preferisci: supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Sblocca istantaneamente Kutools per Outlook con un solo clic. Non aspettare, scarica ora e aumenta la tua efficienza!

kutools for outlook features1 kutools for outlook features2