VBA Outlook : Formater un e-mail en html

VBA - Visual Basic for Application

Tous ceux qui programment beaucoup avec l’éditeur VBA pour écrire quelques macros qui automatisent des tâches récurrentes seront rapidement confrontés au MailItem.

Le MailItem représente l’objet de l’e-mail correspondant dans l’éditeur de code. Vous pouvez lui attribuer diverses propriétés. Par exemple, vous pouvez marquer les e-mails sélectionnés comme lus avec une macro VBA ou écrire une réponse automatique à un e-mail. Il convient alors d’attribuer le bon formatage, par exemple HTML, à un tel e-mail de réponse automatique, car HTML offre beaucoup plus de possibilités de conception qu’un e-mail purement textuel.

Utiliser la propriété BodyFormat

Pour obtenir un formatage HTML, il faut utiliser la propriété BodyFormat, comme le montrent l’image et l’exemple de code suivants.

Capture d'écran code source VBA pour formater un MailItem en courrier HTML
Attribuer le format HTML à la propriété 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
       '...plus de code ici
    Next olItem
End Sub

Dans l’exemple de code, des courriers électroniques de réponse sont générés pour tous les courriers électroniques marqués dans la boîte de réception et chaque MailItem du courrier de réponse se voit attribuer le format html via la propriété BodyFormat (olFormatHTML).

BodyFormat est une énumération, ce qui signifie que vous pouvez aussi simplement attribuer la valeur numérique appropriée. Outre olFormatHTML, il existe les formats suivants :

    • olFormatUnspecified (valeur 0) : pas de formatage spécifique
    • olFormatPlain (valeur 1) : l’objet courrier est formaté en texte seul
    • olFormatHTML (valeur 2) : Le courrier est formaté en HTML
    • olFormatRichText (valeur 3) : Le courrier est édité au format texte enrichi, qui offre également des options de conception comme html.

Note:

Pour que l’exécution du code fonctionne correctement dans Outlook, les éléments suivants doivent être définis sous “Outils” ➤ “Références”, les bibliothèques correctes doivent être sélectionnées.

Capture d'écran des références nécessaires dans l'éditeur VBA
Définissez les bibliothèques nécessaires sous Extras ➤ Références

Vous pouvez maintenant continuer à travailler avec olReply et assigner du texte sous forme de code HTML, par exemple.

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *