Outlook: come estrarre tutti gli URL da un'email
Se un'email contiene centinaia di URL da estrarre in un file di testo, copiarli e incollarli uno per uno sarebbe un’operazione noiosa e dispendiosa in termini di tempo. Questo tutorial presenta macro VBA capaci di estrarre rapidamente tutti gli URL direttamente dall’email.
Macro VBA per estrarre gli URL da un'email in un File di Testo
Macro VBA per estrarre gli URL da più email in un file Excel
- Migliora la tua produttività email con la tecnologia AI, rispondendo rapidamente alle email, creandone di nuove, traducendo messaggi e molto altro in modo ancora più efficiente.
- Automatizza l’invio delle email con CC/BCC automatico, Inoltro automatico e regole; invia una Risposta automatica (fuori sede) senza dover utilizzare un server Exchange...
- Ricevi promemoria come Prompt quando si risponde a una email con me in Ccn quando rispondi a tutti pur essendo in Ccn, e Promemoria per allegati mancanti per non dimenticare gli allegati…
- Migliora l’efficienza delle email con Rispondi con allegati (tutti), Aggiunta automatica di saluto o data e ora nella firma o nell’oggetto, Rispondi a più email...
- Ottimizza l’invio delle email con Richiama Email, Strumenti allegati (Comprimi tutto, Salvataggio automatico di tutti gli allegati...), Rimuovi duplicati e Rapporto rapido...
Macro VBA per estrarre gli URL da un'email in un File di Testo
1. Seleziona un'email da cui desideri estrarre gli URL e premi i tasti Alt+F11 per aprire la finestra di Microsoft Visual Basic for Applications.
2. Fai clic su Inserisci > Modulo per creare un nuovo modulo vuoto, quindi copia e incolla il codice seguente nel modulo.
Macro VBA: estrae tutti gli URL da un'email e li salva in 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
Questo codice crea un nuovo file di testo con il nome dell'oggetto dell'email e lo salva nel percorso: C:\Users\Public\Downloads; puoi modificarlo in base alle tue esigenze.

3. Fare clic su Strumenti > Riferimenti per aprire la finestra di dialogo Riferimenti – Progetto 1, quindi selezionare la casella Microsoft VBScript Regular Expressions 5,5. Infine, fare clic su OK.


4. Premere il tasto F5 oppure fare clic sul pulsante Esegui per eseguire il codice; a questo punto verrà visualizzato un file di testo contenente tutti gli URL estratti.


Nota: se utilizzi Outlook 2010 e Outlook 365, assicurati di selezionare anche la casella di controllo Windows Script Host Object Modelal passaggio 3, quindi fai clic su OK.
Macro VBA per estrarre gli URL da più email in un file Excel
Se si desidera estrarre gli URL da più email selezionate in un file Excel, la macro VBA seguente può essere d’aiuto.
1. Selezionare un'email da cui si desidera estrarre gli URL e premere i tasti Alt+F11per aprire la finestra di Microsoft Visual Basic for Applications.
2. Fare clic su Inserisci>Moduloper creare un nuovo modulo vuoto, quindi copiare e incollare il codice seguente nel modulo.
Macro VBA: estrae 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
Questo codice estrae tutti i collegamenti ipertestuali insieme al corrispondente Testo di visualizzazione e al Oggetto email.

3. Fare clic su Strumenti > Riferimenti per aprire la finestra di dialogo Riferimenti – Progetto 1, quindi selezionare le caselle Microsoft Excel 16,0 Object Library e Microsoft Word 16,0 Object Library. Infine, fare clic su OK.


4. Posiziona quindi il cursore all'interno del codice VBA, premi il tasto F5 oppure fai clic sul pulsante Esegui per eseguire il codice: verrà visualizzata una cartella di lavoro contenente tutti gli URL estratti, che potrai poi salvare in una cartella.

Nota: tutte le macro VBA indicate sopra estraggono ogni tipo di collegamento ipertestuale.
Migliori strumenti per la produttività in Office
Scopri il nuovissimo Kutools per Outlook con 100+ funzionalità incredibili!Clicca per scaricare ora!
📧Automazione delle email: Risposta automatica (disponibile per POP e IMAP) / Invio email programmato / CC/BCC automatico in base a regole durante l’invio delle email / Inoltro automatico (regola avanzata) / Aggiunta automatica del saluto / Divisione automatica delle email con destinatari multipli in messaggi individuali...
📨Gestione delle email: Richiama Email / Blocca le email truffaldine in base all’oggetto e ad altri criteri / Elimina email duplicate / Ricerca avanzata / Organizza cartelle...
📁Allegati Pro: Salvataggio batch / Distacco batch / Compressione batch / Salvataggio automatico / Distacco automatico / Compressione automatica…
🌟Magia dell’interfaccia: 😊 Più emoji graziose e accattivanti / Ti avvisa all’arrivo di email importanti / Riduci a icona Outlook invece di chiuderlo...
👍Meraviglie con un clic: Rispondi a Tutti con Allegati / Email anti-phishing / 🕘 Mostra il fuso orario – Ora corrente del mittente...
👩🏼🤝👩🏻Contatti e calendario: Aggiungi contatti in blocco dalle email selezionate / Dividi un gruppo di contatti in gruppi individuali / Rimuovi i promemoria dei compleanni...
Usa Kutools nella tua lingua preferita: supporta inglese, spagnolo, tedesco, francese, cinese e oltre 40 altre lingue!


🚀 Download con un clic — Ottieni tutti i componenti aggiuntivi per Office
Fortemente consigliato: Kutools for Office (5-in-1)
Un clic per scaricare cinque programmi di installazionetutti insieme —Kutools per Excel, Outlook, Word, PowerPointe Office Tab Pro.Clicca per scaricare ora!
- ✅Comodità con un solo clic: scarica tutti e cinque i pacchetti di installazione in un’unica azione.
- 🚀Pronto per qualsiasi attività in Office: installa i componenti aggiuntivi che ti servono, esattamente quando ti servono.
- 🧰Inclusi: Kutools per Excel / Kutools per Outlook / Kutools per Word / Office Tab Pro / Kutools for PowerPoint