VBA Outlook: Formatear correo electrónico como html

VBA - Visual Basic for Application

Cualquiera que programe mucho con el editor VBA para escribir unas cuantas macros que automaticen tareas recurrentes entrará rápidamente en contacto con el MailItem.

El MailItem representa el objeto del correo electrónico respectivo en el editor de código. Puede asignarle varias propiedades. Por ejemplo, puede marcar los correos electrónicos seleccionados como leídos con una macro VBA o escribir una respuesta automática a un correo electrónico. También se puede asignar el formato correcto, por ejemplo HTML, a un mensaje de respuesta automática, ya que HTML ofrece muchas más opciones de diseño que un mensaje de texto puro.

Utilizar la propiedad BodyFormat

Para conseguir el formato HTML, hay que utilizar la propiedad BodyFormat, como se muestra en la siguiente imagen y ejemplo de código.

Captura de pantalla de código fuente VBA para formatear un MailItem como correo HTML
Asignar el formato HTML a la propiedad BodyFormat
Sub ReplyMSG()
    Dim olItem As Outlook.MailItem
    Dim olReply As MailItem
    
    For Each olItem In Application.ActiveExplorer.Selection
        Set olReply = olItem.Reply
        olReply.BodyFormat = olFormatHTML
        '...más código aquí
    NextolItem
End Sub

En el código de ejemplo, se generan correos de respuesta para todos los correos marcados en la bandeja de entrada y a cada MailItem del correo de respuesta se le asigna el formato html a través de la propiedad BodyFormat (olFormatHTML).

BodyFormat es una enumeración, lo que significa que también se puede simplemente asignar el valor numérico apropiado. Además de olFormatHTML existen los siguientes:

    • olFormatUnspecified (valor 0): sin formato específico
    • olFormatPlain (valor 1): el objeto de correo tiene formato de sólo texto
    • olFormatoHTML (valor 2): El correo se formatea como HTML
    • olFormatRichText (valor 3): El correo se emite en formato de texto enriquecido, que también ofrece opciones de diseño como html

Nota:

Para que la ejecución del código funcione correctamente en Outlook, en “Herramientas” ➤ “Vínculos” se deben seleccionar las bibliotecas correctas.

Captura de pantalla de las referencias necesarias en el editor VBA
Captura de pantalla de las referencias necesarias en el editor VBA

Ahora puede seguir trabajando con olReply y asignar texto en forma de código HTML, por ejemplo.

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *