¿Cómo exportar correos electrónicos de varias carpetas/subcarpetas a Excel en Outlook?
Exportar correos electrónicos desde múltiples carpetas o subcarpetas a Excel puede ser una tarea tediosa si dependes de métodos manuales o de las funciones limitadas de Outlook. Afortunadamente, existen formas más eficientes de lograrlo. En este artículo, exploraremos dos métodos: un enfoque basado en VBA y una solución más rápida y fácil de usar con Kutools para Outlook. Si bien el método VBA ofrece flexibilidad, implica una configuración compleja y ajustes detallados. En contraste, Kutools para Outlook proporciona una manera sencilla y potente de exportar correos electrónicos a Excel con solo unos pocos clics, ahorrándote tiempo y esfuerzo. ¡Adentrémonos en los detalles!
Exportar Correos Electrónicos desde Múltiples Carpetas/Subcarpetas a Excel Usando VBA (Complejo pero Flexible)
Exportar Correos Electrónicos desde una Carpeta/Subcarpeta a Excel Usando Kutools para Outlook 👍 (Eficiente y Fácil de Usar)
Exportar Correos Electrónicos desde Múltiples Carpetas/Subcarpetas a Excel Usando VBA
Si te sientes cómodo con la programación y necesitas una solución personalizable, usar VBA puede ser efectivo. Este método te permite especificar múltiples carpetas o subcarpetas y exportar sus correos electrónicos a archivos de Excel separados. Sin embargo, requiere conocimientos técnicos y una cuidadosa personalización del código.
Paso 1: Abrir el Editor de VBA
Presiona Alt + F11 para abrir la ventana "Microsoft Visual Basic for Applications".
Paso 2: Insertar un Nuevo Módulo
Haz clic en "Insertar" > "Módulo", y luego pega el siguiente código VBA en la nueva ventana de Módulo.
VBA: Exportar correos electrónicos desde 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: Personalizar el Código VBA
- Reemplaza "ruta_carpeta_destino" en el código anterior por la ruta real de la carpeta, como "C:\Users\DT168\Documents\TEST".
- Reemplaza "tu_cuenta_de_correo\carpeta\subcarpeta_1" y "tu_cuenta_de_correo\carpeta\subcarpeta_2" con tus rutas de carpetas de Outlook, como "Kelly@extendoffice.com\Bandeja de entrada\A" y "Kelly@extendoffice.com\Bandeja de entrada\B".
Paso 4: Ejecutar el Código
Presiona "F5" o haz clic en el botón "Ejecutar" para ejecutar el código. Luego haz clic en 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/subcarpetas especificadas se han exportado a libros de Excel.
Desventajas:
- Configuración Compleja: Requiere ajustes cuidadosos del código y conocimientos prácticos de VBA.
- Propenso a Errores: Pequeños errores en la personalización pueden causar fallos o exportaciones incompletas.
- Consumo de Tiempo: No es adecuado para exportaciones rápidas o frecuentes.
¡Transforma tu Gestión de Correos con Procesamiento Masivo!
¿Cansado de tareas repetitivas de correo electrónico? Kutools para Outlook ofrece herramientas de "Procesamiento Masivo" para optimizar tu flujo de trabajo y ahorrar tiempo valioso.
- 🌟 Responder a Múltiples Correos: Envía respuestas masivas utilizando plantillas sin esfuerzo.
- 📧 Reenviar Individualmente: Reenvía múltiples correos como mensajes regulares, no como adjuntos.
- 📝 Guardar en Varios Formatos: Exporta correos electrónicos como PDF, Word, Excel y más, ¡todo de una vez!

Exportar Correos Electrónicos desde una Carpeta/Subcarpeta a Excel Usando Kutools para Outlook 👍
Para un enfoque más rápido y sin complicaciones, "Kutools para Outlook" ofrece una función llamada "Guardar Correos Electrónicos Seleccionados como Archivos en Varios Formatos". Este método es altamente recomendable por su simplicidad, rapidez y versatilidad. Ya sea que estés gestionando una pequeña cantidad de correos electrónicos o grandes volúmenes de datos, Kutools garantiza una experiencia fluida con el mínimo esfuerzo.
¡Dile adiós a la ineficiencia de Outlook! Kutools para Outlook facilita el procesamiento de correos electrónicos en lote, ¡ahora con funciones gratuitas impulsadas por inteligencia artificial! Descarga Kutools para Outlook ahora!!
Paso 1: Seleccionar la Carpeta o Subcarpeta
Navega hasta la carpeta o subcarpeta que contiene los correos electrónicos que deseas exportar. Presiona Ctrl + A para seleccionar todos los correos electrónicos en la lista.
Paso 2: Acceder a la Función Guardar Correos Electrónicos Seleccionados como Archivos en Varios Formatos
Haz clic en "Kutools" > "Procesamiento Masivo" > "Guardar Correos Electrónicos Seleccionados como Archivos en Varios Formatos".
Paso 3: Configurar los Ajustes de Exportación
- En el cuadro de diálogo "Guardar Mensajes como Otros Archivos", elige la carpeta de destino donde deseas guardar los archivos.
- Selecciona la opción "Formato Excel".
- Elige el contenido específico de los correos electrónicos a exportar (por ejemplo, encabezado, cuerpo) en la sección "Guardar Contenido".
Paso 4: Completar la Exportación
Haz clic en "Aceptar" para comenzar el proceso de exportación. Una vez completado, encontrarás todos los correos electrónicos guardados como archivos de Excel separados en la carpeta designada.
Ventajas:
- Rápido e Intuitivo: Exporta correos electrónicos a Excel con solo unos pocos clics; no se requieren habilidades técnicas.
- Salida Personalizable: Elige formatos de archivo específicos y contenidos según tus necesidades.
- Proceso Libre de Errores: Evita las complejidades y posibles errores asociados con los métodos VBA.
- Resultados Profesionales: Perfecto para crear registros organizados o compartir datos de manera eficiente.
Las mejores herramientas de productividad para Office
Noticia de última hora: ¡Kutools para Outlook lanza su versión gratuita!
¡Descubre el nuevo Kutools para Outlook con más de100 increíbles funciones! Haz clic para descargar ahora.
📧 Automatización de correo electrónico: Respuesta automática (disponible para POP e IMAP) / Programar envío de correo electrónico / CC/BCC automático por regla al enviar correo / Reenvío automático (Regla avanzada) / Agregar saludo automáticamente / Dividir automáticamente correos con múltiples destinatarios en emails individuales...
📨 Gestión de correo electrónico: Recuperar correo electrónico / Bloquear correos fraudulentos por asunto y otros filtros / Eliminar duplicados / Búsqueda Avanzada / Organizar carpetas...
📁 Adjuntos Pro: Guardar en lote / Desanexar en lote / Comprimir en lote / Guardar automáticamente / Desconectar automáticamente / Auto Comprimir...
🌟 Magia en la interfaz: 😊Más emojis bonitos y modernos / Avisos cuando llegan emails importantes / Minimizar Outlook en vez de cerrar...
👍 Funciones en un clic: Responder a Todos con Adjuntos / Correos antiphishing / 🕘Mostrar la zona horaria del remitente...
👩🏼🤝👩🏻 Contactos y Calendario: Agregar contacto en lote desde emails seleccionados / Dividir un grupo de contactos en grupos individuales / Eliminar recordatorio de cumpleaños...
Utiliza Kutools en tu idioma preferido — disponible en Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales.


🚀 Descarga con un solo clic — Consigue todos los complementos para Office
Muy recomendado: Kutools para Office (5 en1)
Descarga los cinco instaladores a la vez con solo un clic — Kutools para Excel, Outlook, Word, PowerPoint y Office Tab Pro. Haz clic para descargar ahora.
- ✅ Comodidad en un solo clic: Descarga los cinco paquetes de instalación en una sola acción.
- 🚀 Listo para cualquier tarea en Office: Instala los complementos que necesites cuando los necesites.
- 🧰 Incluye: Kutools para Excel / Kutools para Outlook / Kutools para Word / Office Tab Pro / Kutools para PowerPoint