¿Cómo exportar correos electrónicos de varias carpetas o subcarpetas a Excel en Outlook?
Exportar correos electrónicos desde múltiples carpetas o subcarpetas a Excel puede volverse tedioso si depende de métodos manuales o de las funciones limitadas de Outlook. Afortunadamente, existen opciones mucho más eficientes. En este artículo, exploraremos dos enfoques: uno basado en VBA y otra solución más rápida y sencilla con Kutools para Outlook. Si bien el método VBA ofrece flexibilidad, requiere una configuración y ajustes complejos. En cambio, Kutools para Outlook le permite exportar correos electrónicos a Excel de forma intuitiva y potente, con solo unos pocos clics, ahorrándole tiempo y esfuerzo. Veamos los detalles.
Exportar correos electrónicos de múltiples carpetas o subcarpetas a Excel mediante VBA(Complejo pero flexible)
Exportar correos electrónicos de una carpeta o subcarpeta a Excel mediante Kutools para Outlook 👍(Eficiente y fácil de usar)
Exportar correos electrónicos de múltiples carpetas o subcarpetas a Excel mediante VBA
Si tiene experiencia en programación y busca una solución altamente personalizable, usar VBA puede ser una opción muy efectiva. Este método le permite especificar varias carpetas o subcarpetas y exportar sus correos electrónicos a distintos archivos de Excel. No obstante, requiere conocimientos técnicos y una adaptación cuidadosa del código.
Paso 1: Abra el Editor de VBA
Pulse Alt + F11 para abrir la ventana de «Microsoft Visual Basic para Aplicaciones».
Paso 2: Inserte un nuevo módulo
Haga clic en «Insertar» > «Módulo» y, a continuación, pegue el siguiente código VBA en la nueva ventana del módulo.
VBA: Exportar correos electrónicos de múltiples carpetas y subcarpetas a Excel
Const MACRO_NAME = "Export Outlook Folders to Excel"
Sub ExportMain()
ExportToExcel "destination_folder_path\A.xlsx", "your_email_account\folder\subfolder_1"
ExportToExcel "destination_folder_path\B.xlsx", "your_email_account\folder\subfolder_2"
MsgBox "Process complete.", vbInformation + vbOKOnly, MACRO_NAME
End Sub
Sub ExportToExcel(strFilename As String, strFolderPath As String)
Dim olkMsg As Object
Dim olkFld As Object
Dim excApp As Object
Dim excWkb As Object
Dim excWks As Object
Dim intRow As Integer
Dim intVersion As Integer
If strFilename <> "" Then
If strFolderPath <> "" Then
Set olkFld = OpenOutlookFolder(strFolderPath)
If TypeName(olkFld) <> "Nothing" Then
intVersion = GetOutlookVersion()
Set excApp = CreateObject("Excel.Application")
Set excWkb = excApp.Workbooks.Add()
Set excWks = excWkb.ActiveSheet
With excWks
.Cells(1, 1) = "Subject"
.Cells(1, 2) = "Received"
.Cells(1, 3) = "Sender"
End With
intRow = 2
For Each olkMsg In olkFld.Items
If olkMsg.Class = olMail Then
excWks.Cells(intRow, 1) = olkMsg.Subject
excWks.Cells(intRow, 2) = olkMsg.ReceivedTime
excWks.Cells(intRow, 3) = GetSMTPAddress(olkMsg, intVersion)
intRow = intRow + 1
End If
Next
Set olkMsg = Nothing
excWkb.SaveAs strFilename
excWkb.Close
Else
MsgBox "The folder '" & strFolderPath & "' does not exist in Outlook.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The folder path was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The filename was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If
Set olkMsg = Nothing
Set olkFld = Nothing
Set excWks = Nothing
Set excWkb = Nothing
Set excApp = Nothing
End Sub
Public Function OpenOutlookFolder(strFolderPath As String) As Outlook.MAPIFolder
Dim arrFolders As Variant
Dim varFolder As Variant
Dim bolBeyondRoot As Boolean
On Error Resume Next
If strFolderPath = "" Then
Set OpenOutlookFolder = Nothing
Else
Do While Left(strFolderPath, 1) = "\"
strFolderPath = Right(strFolderPath, Len(strFolderPath) - 1)
Loop
arrFolders = Split(strFolderPath, "\")
For Each varFolder In arrFolders
Select Case bolBeyondRoot
Case False
Set OpenOutlookFolder = Outlook.Session.Folders(varFolder)
bolBeyondRoot = True
Case True
Set OpenOutlookFolder = OpenOutlookFolder.Folders(varFolder)
End Select
If Err.Number <> 0 Then
Set OpenOutlookFolder = Nothing
Exit For
End If
Next
End If
On Error GoTo 0
End Function
Function GetSMTPAddress(Item As Outlook.MailItem, intOutlookVersion As Integer) As String
Dim olkSnd As Outlook.AddressEntry
Dim olkEnt As Object
On Error Resume Next
Select Case intOutlookVersion
Case Is < 14
If Item.SenderEmailType = "EX" Then
GetSMTPAddress = SMTPEX(Item)
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
Case Else
Set olkSnd = Item.Sender
If olkSnd.AddressEntryUserType = olExchangeUserAddressEntry Then
Set olkEnt = olkSnd.GetExchangeUser
GetSMTPAddress = olkEnt.PrimarySmtpAddress
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
End Select
On Error GoTo 0
Set olkSnd = Nothing
Set olkEnt = Nothing
End Function
Function GetOutlookVersion() As Integer
Dim arrVer As Variant
arrVer = Split(Outlook.Version, ".")
GetOutlookVersion = arrVer(0)
End Function
Function SMTPEX(olkMsg As Outlook.MailItem) As String
Dim olkPA As Outlook.propertyAccessor
On Error Resume Next
Set olkPA = olkMsg.propertyAccessor
SMTPEX = olkPA.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x5D01001E")
On Error GoTo 0
Set olkPA = Nothing
End Function Paso 3: Personalice el código VBA
- Sustituya "destination_folder_path« en el código anterior por la ruta real de la carpeta, por ejemplo: »C:\Users\DT168\Documents\TEST".
- Sustituya "your_email_account\folder\subfolder_1« y »your_email_account\folder\subfolder_2« por sus rutas de archivo de Outlook, por ejemplo: »Kelly@extendoffice.com\Bandeja de entrada\A« y »Kelly@extendoffice.com\Bandeja de entrada\B".

Paso 4: Ejecute el código
Pulse "F5" o haga clic en el botón «Ejecutar» para ejecutar el código. Luego, pulse el botón «Aceptar» en el cuadro de diálogo emergente «Exportar carpetas de Outlook a Excel». Ahora, los correos electrónicos de todas las carpetas o subcarpetas especificadas se habrán exportado a Libro de Excel.
Inconvenientes:
- Configuración compleja: Requiere un ajuste minucioso del código y conocimientos prácticos de VBA.
- Propenso a errores: Pequeños fallos en la personalización pueden provocar errores o exportaciones incompletas.
- Lento: No es adecuado para exportaciones rápidas ni frecuentes.
¡Transforme su gestión de correo electrónico con Procesamiento Masivo!
¿Cansado de tareas repetitivas con correos electrónicos? Kutools para Outlook ofrece herramientas de «procesamiento masivo» para optimizar su flujo de trabajo y ahorrar un tiempo valioso.
- 🌟Responder varios correos electrónicos: Envíe respuestas masivas sin esfuerzo mediante plantillas.
- 📧Reenviar individualmente: Reenvíe varios correos como mensajes normales, no como archivos adjuntos.
- 📝Guardar en distintos formatos: Exporta correos electrónicos como PDF, Word, Excel y más, ¡todo de una sola vez!

Exportar correos electrónicos de una carpeta o subcarpeta a Excel mediante Kutools para Outlook 👍
Para un enfoque más rápido y sencillo, «Kutools para Outlook» ofrece la función «Guardar correos electrónicos seleccionados como archivos en distintos formatos». Este método destaca por su simplicidad, rapidez y versatilidad, y es altamente recomendable tanto si gestiona un pequeño lote de correos como grandes volúmenes de datos, garantizando siempre una experiencia fluida con el mínimo esfuerzo.
¡Diga adiós a la ineficiencia en Outlook! Kutools para Outlook hace que el procesamiento masivo de correos electrónicos sea más sencillo: ¡pruébelo gratis durante 30 días!¡Descargue Kutools para Outlook ahora!!
Paso 1: Seleccione la carpeta o subcarpeta
Vaya a la carpeta o subcarpeta que contiene los correos electrónicos que desea exportar. Pulse Ctrl + A para seleccionar todos los correos de la lista.
Paso 2: Acceda a la función Guardar correos electrónicos seleccionados como archivos en distintos formatos
Haga clic en «Kutools» > «Procesamiento masivo» > «Guardar correos electrónicos seleccionados como archivos en distintos formatos».

Paso 3: Configure la configuración de exportación
- En el cuadro de diálogo «Guardar correo electrónico como otros archivos», seleccione la carpeta de destino en la que desea guardar los archivos.
- Seleccione la opción «Formato Excel».
- Seleccione los elementos específicos del correo electrónico que desea exportar (por ejemplo, encabezado, cuerpo) en la sección «Guardar contenido».

Paso 4: Complete la exportación
Haga clic en «Aceptar» para iniciar el proceso de exportación. Una vez finalizado, encontrará todos los correos guardados como archivos individuales de Excel en la carpeta designada.

Ventajas:
- Rápido e intuitivo: Exporte correos electrónicos a Excel con solo unos pocos clics, sin necesidad de conocimientos técnicos.
- Salida personalizable: Elija el tipo de archivo y los contenidos específicos que se ajusten a sus necesidades.
- Proceso libre de errores: Evite las complejidades y los posibles errores asociados a los métodos basados en VBA.
- Resultados profesionales: Ideal para crear registros bien organizados o compartir datos de forma eficiente.
Las mejores herramientas de productividad para Office
¡Descubra el nuevo Kutools para Outlook con 100+ funciones increíbles!¡Haga clic para descargar ahora!
📧Automatización de correo electrónico: Respuesta automática (disponible para POP e IMAP) / Programar el envío de correos electrónicos / CC/BCC automático según reglas al enviar correos / Reenvío automático (regla avanzada) / Añadir saludo automáticamente / Dividir automáticamente los correos con múltiples destinatarios en mensajes individuales...
📨Gestión de correo electrónico: Recupera tus correos electrónicos / Bloquea correos fraudulentos por asunto y otros criterios / Elimina correos electrónicos duplicados / Búsqueda avanzada / Organiza tus carpetas…
📁Archivos adjuntos Pro: Guardar en lote / Desvincular en lote / Comprimir en lote / Guardar automáticamente / Desconectar automáticamente / Auto comprimir...
🌟Magia de la interfaz: 😊Más emojis bonitos y modernos / Le avisa cuando llegan correos importantes / Minimiza Outlook en lugar de cerrarlo…
👍Maravillas con un solo clic: Responder a Todos con Adjuntos / Correos electrónicos antiphishing / 🕘 Mostrar zona horaria: hora actual del remitente...
👩🏼🤝👩🏻Contactos y calendario: Crear contactos en lote a partir de correos seleccionados / Dividir un grupo de contactos en grupos individuales / Eliminar recordatorio de cumpleaños...
Utilice Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y más de 40 idiomas adicionales.


🚀 Descarga con un solo clic — Obtenga todos los complementos de Office
Muy recomendado: Kutools for Office (5 en 1)
Un solo clic para descargar cinco instaladoresa la vez —Kutools para Excel, Outlook, Word, PowerPointy Office Tab Pro.¡Haga clic para descargar ahora!
- ✅Comodidad con un solo clic: Descargue los cinco paquetes de instalación de una sola vez.
- 🚀Listo para cualquier tarea de Office: Instale los complementos que necesite, justo cuando los necesite.
- 🧰Incluido: Kutools para Excel / Kutools para Outlook / Kutools para Word / Office Tab Pro / Kutools for PowerPoint

