Saltar al contenido principal

Outlook: cómo extraer todas las URL de un correo electrónico

Autor: sol Última modificación: 2022-04-29

Si un correo electrónico contiene cientos de URL que se deben extraer a un archivo de texto, copiarlas y pegarlas una por una será un trabajo tedioso. Este tutorial presenta VBA que pueden extraer rápidamente todas las URL de un correo electrónico.

VBA para extraer URL de un correo electrónico a un archivo de texto

VBA para extraer URL de múltiples correos electrónicos a un archivo de Excel

Pestaña Office: habilite la edición y navegación con pestañas en Microsoft Office, haciendo que el trabajo sea muy sencillo
Kutools para Outlook: mejore Outlook con más de 100 funciones avanzadas para una eficiencia superior
Mejore su Outlook 2021 - 2010 o Outlook 365 con estas funciones avanzadas. ¡Disfruta de una prueba completa gratuita de 60 días y mejora tu experiencia de correo electrónico!

VBA para extraer URL de un correo electrónico a un archivo de texto

 

1. Seleccione un correo electrónico del que desee extraer las URL y presione otro + F11 claves para habilitar Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic en recuadro > Módulo para crear un nuevo módulo en blanco, luego copie y pegue el código debajo del módulo.

VBA: extraiga todas las URL de un correo electrónico a un archivo de texto.

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

En este código, creará un nuevo archivo de texto que se nombra con el asunto del correo electrónico y se coloca en la ruta: C:\Usuarios\Público\Descargas, puedes cambiarlo según lo necesites.

URL de extracto de documento 1

3. Hacer clic en Herramientas > Referencias para permitir Referencias – Proyecto 1 cuadro de diálogo, marque la Expresiones regulares de Microsoft VBScript 5.5 caja. Hacer clic OK.

URL de extracto de documento 1

URL de extracto de documento 1

4. Prensa F5 tecla o clic Ejecutar para ejecutar el código, ahora aparece un archivo de texto y todas las URL se han extraído en él.

URL de extracto de documento 1

URL de extracto de documento 1

Note: si es usuario de Outlook 2010 y Outlook 365, marque también la casilla de verificación Modelo de objetos de host de secuencias de comandos de Windows en el Paso 3. Luego haga clic en Aceptar.


VBA para extraer URL de múltiples correos electrónicos a un archivo de Excel

 

Si desea extraer URL de varios correos electrónicos seleccionados a un archivo de Excel, el siguiente código de VBA puede ayudarlo.

1. Seleccione un correo electrónico del que desee extraer las URL y presione otro + F11 claves para habilitar Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic en recuadro > Módulo para crear un nuevo módulo en blanco, luego copie y pegue el código debajo del módulo.

VBA: extraiga todas las URL de varios correos electrónicos en un archivo de 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

En este código, extrae todos los hipervínculos y los textos de visualización correspondientes y los asuntos del correo electrónico.

URL de extracto de documento 1

3. Hacer clic en Herramientas > Referencias para permitir Referencias – Proyecto 1 cuadro de diálogo, marcar Biblioteca de objetos de Microsoft Excel 16.0 y Biblioteca de objetos de Microsoft Word 16.0 casillas de verificación Hacer clic OK.

URL de extracto de documento 1

URL de extracto de documento 1

4. Luego coloque el cursor dentro del código VBA, presione F5 tecla o clic Ejecutar para ejecutar el código, ahora aparece un libro de trabajo y todas las URL se han extraído en él, luego puede guardarlo en una carpeta.

URL de extracto de documento 1

Note: todos los VBA anteriores extraen todo tipo de hipervínculos.


Las mejores herramientas de productividad de oficina

Kutools para Outlook - Más de 100 potentes funciones para potenciar tu perspectiva

🤖 Asistente de correo AI: Correos electrónicos profesionales instantáneos con magia de IA: respuestas geniales con un clic, tono perfecto y dominio multilingüe. ¡Transforme el correo electrónico sin esfuerzo! ...

📧 Automatización de correo electrónico: Fuera de la oficina (disponible para POP e IMAP)  /  Programar envío de correos electrónicos  /  CC/CCO automático según reglas al enviar correo electrónico  /  Reenvío automático (reglas avanzadas)   /  Agregar saludo automáticamente   /  Divida automáticamente correos electrónicos de múltiples destinatarios en mensajes individuales ...

📨 Gestión de correo electrónico: Recuperar correos electrónicos fácilmente  /  Bloquear correos electrónicos fraudulentos por sujetos y otras personas  /  Eliminar correos electrónicos duplicados  /  Búsqueda Avanzada  /  Consolidar carpetas ...

📁 Archivos adjuntos profesionalesGuardar lote  /  Separación de lotes  /  Comprimir por lotes  /  Ahorro automático   /  Desconexión automática  /  Autocompresión ...

???? Interfaz mágica: 😊Más emojis bonitos y geniales   /  Aumente su productividad en Outlook con vistas con pestañas  /  Minimizar Outlook en lugar de cerrar ...

👍 Maravillas con un clic: Responder a todos los archivos adjuntos entrantes  /   Correos electrónicos antiphishing  /  🕘Mostrar zona horaria del remitente ...

👩🏼‍🤝‍👩🏻 Contactos y calendario: Agregar por lotes contactos de correos electrónicos seleccionados  /  Dividir un grupo de contactos en grupos individuales  /  Eliminar recordatorios de cumpleaños ...

Mas de Características 100 ¡Espere su exploración! Haga clic aquí para descubrir más.

Leer Más       Descargar gratis      Comprar
 

 

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