
Para leer correos entrantes de Outlook usando Excel, necesitarás utilizar VBA (Visual Basic for Applications), que te permitirá interactuar con Outlook desde Excel. Aquí tienes una guía básica para comenzar:
Sub LeerCorreosDeOutlook()
' Crea objetos para interactuar con Outlook
Dim outlookApp As Outlook.Application
Dim outlookNamespace As Outlook.Namespace
Dim inbox As Outlook.MAPIFolder
Dim mailItem As Object
Dim i As Integer
Dim fila As Integer
' Inicializar objetos
Set outlookApp = New Outlook.Application
Set outlookNamespace = outlookApp.GetNamespace("MAPI")
Set inbox = outlookNamespace.GetDefaultFolder(olFolderInbox)
' Fila de inicio en la hoja de Excel
fila = 1
' Iterar a través de los correos electrónicos en la bandeja de entrada
For i = 1 To inbox.Items.Count
Set mailItem = inbox.Items(i)
' Comprueba si es un mailItem (podría ser también una reunión u otro tipo de objeto)
If TypeName(mailItem) = "MailItem" Then
' Escribe en la hoja de Excel
With ThisWorkbook.Sheets(1)
.Cells(fila, 1).Value = mailItem.Subject
.Cells(fila, 2).Value = mailItem.ReceivedTime
.Cells(fila, 3).Value = mailItem.SenderName
End With
fila = fila + 1
End If
Next i
' Liberar objetos
Set mailItem = Nothing
Set inbox = Nothing
Set outlookNamespace = Nothing
Set outlookApp = Nothing
MsgBox "Correos leídos y copiadas a la hoja de Excel."
End Sub
- Abrir el Editor de VBA en Excel:
- Abre Excel y presiona `ALT + F11` para abrir el Editor de VBA.
- Habilitar la referencia de Outlook:
- En el Editor de VBA, ve a `Herramientas` > `Referencias`.
- Busca «Microsoft Outlook xx.x Object Library» (donde «xx.x» es la versión que tienes instalada, por ejemplo, 16.0) y márcala. Luego, haz clic en «Aceptar».
- Escribiendo el código VBA:
- Crea un nuevo módulo: `Insertar` > `Módulo`.
- Copia y pega el siguiente código como un ejemplo base. Este código simple recupera los primeros correos electrónicos de tu bandeja de entrada.
- Ejecutar el código VBA:
- En el Editor de VBA, selecciona el módulo donde pegaste el código.
- Presiona `F5` para ejecutar el script.
- Revisar los resultados:
- Vuelve a la hoja de Excel y el asunto, la fecha de recepción y el nombre del remitente de cada correo se habrán copiado en las celdas.
Este es un script básico y puede requerir ajustes dependiendo de tus necesidades específicas, como filtrar por cierta fecha, remitente, o analizar solo un cierto número de correos. También ten en cuenta que este script puede no funcionar directamente si hay configuraciones de seguridad en tu sistema informático que limiten la interacción entre aplicaciones.
Conoce nuestros servicios



