
Para registrar un log de los correos enviados utilizando VBA en Outlook, puedes modificar el código VBA que se utiliza para enviar correos electrónicos de modo que también registre información sobre cada envío en un archivo de texto o una hoja de Excel. Aquí tienes un ejemplo básico que utiliza un archivo de texto para registrar los correos enviados:
Sub EnviarCorreoConLog()
Dim OutlookApp As Object
Dim Correo As Object
Dim ArchivoLog As String
Dim Fs As Object
Dim Ts As Object
Dim Asunto As String
Dim Destinatario As String
Dim Cuerpo As String
' Configurar datos del correo
Asunto = "Asunto del correo"
Destinatario = "destinatario@ejemplo.com"
Cuerpo = "Este es el cuerpo del correo."
' Configurar la ubicación del archivo log
ArchivoLog = "C:rutadellogcorreo_log.txt"
' Crear una instancia de Outlook
Set OutlookApp = CreateObject("Outlook.Application")
Set Correo = OutlookApp.CreateItem(0) ' 0 indica correo electrónico
' Configurar correo
With Correo
.To = Destinatario
.Subject = Asunto
.Body = Cuerpo
' Enviar el correo
.Send
End With
' Registro del log
Set Fs = CreateObject("Scripting.FileSystemObject")
' Comprueba si el archivo ya existe
If Fs.FileExists(ArchivoLog) Then
Set Ts = Fs.OpenTextFile(ArchivoLog, 8) ' 8 es para añadir al final
Else
Set Ts = Fs.OpenTextFile(ArchivoLog, 2, True) ' 2 es para escribir
End If
' Escribir en el log
Ts.WriteLine "-----------------------------------"
Ts.WriteLine "Fecha y hora: " & Now
Ts.WriteLine "Destinatario: " & Destinatario
Ts.WriteLine "Asunto: " & Asunto
Ts.WriteLine "-----------------------------------"
Ts.Close
' Liberar objetos
Set Correo = Nothing
Set OutlookApp = Nothing
Set Ts = Nothing
Set Fs = Nothing
MsgBox "Correo enviado y log registrado."
End Sub
- Abra el Editor de VBA en Outlook:
- Presiona `Alt + F11` para abrir el Editor de VBA.
- Cree un nuevo módulo:
- Haz clic en `Insertar` > `Módulo`.
- Inserta el siguiente código en el módulo:
- Configura el archivo log:
- Cambia la variable `ArchivoLog` a la ruta donde deseas guardar tu archivo de log. Asegúrate de que la ruta exista y tengas los permisos adecuados para escribir en esa ubicación.
- Ejecuta el macro:
- Puedes ejecutar este macro directamente desde el Editor de VBA presionando `F5` o configurándolo como un botón en la cinta de opciones de Outlook para facilitar el acceso.
Este script creará un archivo de texto (correo_log.txt) en el que se añadirá una nueva línea con los detalles del correo cada vez que se envíe un correo. Puedes personalizar el script para que registre más detalles según sea necesario.
Conoce nuestros servicios



