2011-08-17 2 views
0

Je suis en train d'écrire une sous-procédure Outlook qui prend l'email actuellement sélectionné, l'analyse et crée un nouveau message électronique. L'analyse est assez simple: Extraire les adresses e-mail de la première ligne du message, puis le reste du corps est le corps de l'e-mail normal dans le nouveau message.Outlook Macro Nouveau message perd le formatage

J'utilise ce code de base pour le réglage du corps du nouveau message:

Set newMsg = Outlook.Application.CreateItem(olMailItem) 
With newMsg 
    .BodyFormat = olFormatHTML 
    .Body = newBody 
    '... set subject,etc 
    .Display 

Le problème est que le nouveau message qui est créé perd toute la mise en forme HTML que le message que je copie les informations de possédés (et divers styles de polices). J'ai essayé de mettre le format de corps du nouveau message en HTML (voir le code ci-dessus), mais cela n'a pas fait l'affaire. Actuellement, le nouveau message contient toutes les données textuelles, mais à la place de la table, les données de chaque cellule sont délimitées par des tabulations et le corps entier du message est dans la même police.

+0

La manifestation Lorsque vous définissez la BodyFormat à olFormatHTML , mais définissez la propriété ** Body ** (au lieu de la propriété ** HTMLBody **), vous pouvez perdre la mise en forme HTML. – JimmyPena

Répondre

0

BodyFormat ne se comporte pas comme prévu. Au lieu de cela, HTMLBody peut être utilisé comme ci-dessous pour afficher correctement le corps en format HTML:

Avec newMsg .HTMLBody = newBody » ... set sujet, etc

Questions connexes