attribuer une police de caractère en vba pour envoi mail

david54520

XLDnaute Junior
Bonjour

Depuis plusieurs jours, et malgré pas de recherche je n'arrive pas à trouver LA bonne écriture VBA pour définir une police et une taille de caractère à un mail envoyé via Excel.

Après avoir "braconner" un peu partout, j'ai pu écrire ceci pour lancer les mails :

'--- Envoi par mail
Dim olapp As Outlook.Application
Sheets("destinataires0").Select
Range("A19").Select

Dim msg As MailItem
Set olapp = New Outlook.Application
Set msg = olapp.CreateItem(olMailItem)
msg.To = Range("a19").Value & ";" & Range("a20").Value
msg.CC = Range("a22").Value & ";" & Range("a23").Value
msg.Subject = Range("A2").Value

msg.HTMLBody = Range("A5").Value & "<br />" & Range("A6").Value & "<br />" & Range("a7").Value & "<br />" & Range("A8").Value & "<br />" & Range("A9").Value & "<br />" & Range("A10").Value & "<br />" & Range("a11").Value & "<br />" & Range("A12").Value & "<br />" & Range("A13").Value & "<br />" & Range("A16").Value & "<br /><br /><br />" & "<img src=f:\logo_petit.JPG>" & " " & "L'équipe XXXX"


msg.Display
ActiveCell.Offset(1, 0).Select


1- je souhaite pouvoir attribuer, pour l'ensemble de msg.HMLBody, la police Arial en taille 10
2- je souhaite pouvoir mettre en gras la valeur de A5
3- je souhaite pouvoir souligner la valeur de A6

Actuellement, tout fonctionne correctement sauf cette partie là.
Mes cellule "source" de HTMLBody sont en verdana, mais le mail qui ressort de tout çà est en Times new roman
Mail transmis via outlook.

Merci d'avance à ceux qui pourront m'éclairer !!

David
 

david54520

XLDnaute Junior
Re : attribuer une police de caractère en vba pour envoi mail

Merci beaucoup Gelinotte,

je vais regarder çà rapidement.
je profites de ce premier échange pour quelques questions supplémentaire :
- est-il possible de reprendre strictement la forme intégrale de ma cellule source dans la macro "mail" vu dans mon premier message.
Si ma cellule A5 est en verdana - 12 - bleu, le mail reprend tout çà, si a6 est en arial gras italique avec un mot en rouge, il reprend, etc...

- je n'ai pas encore fait de recherche sur le forum mais je vous pose la question tout de suite :) : est-il possible en VBA de faire une sauvegarde du classeur à telle heure tous les jours (que le classeur soit ouvert ou pas) et est-il possible de faire un enregistrer sous en donnant en reprenant à chaque fois le nom du classeur et en rajoutant la date et heure de l'action enregistrer sous (ce qui donnerait un truc du genre "monclasseur_datedujour_heure.xls).

Merci beaucoup !
Au plaisir de vous lire, David
 

Gelinotte

XLDnaute Accro
Re : attribuer une police de caractère en vba pour envoi mail

Merci beaucoup Gelinotte,

je vais regarder çà rapidement.
je profites de ce premier échange pour quelques questions supplémentaire :
- est-il possible de reprendre strictement la forme intégrale de ma cellule source dans la macro "mail" vu dans mon premier message.
Si ma cellule A5 est en verdana - 12 - bleu, le mail reprend tout çà, si a6 est en arial gras italique avec un mot en rouge, il reprend, etc...

- je n'ai pas encore fait de recherche sur le forum mais je vous pose la question tout de suite :) : est-il possible en VBA de faire une sauvegarde du classeur à telle heure tous les jours (que le classeur soit ouvert ou pas) et est-il possible de faire un enregistrer sous en donnant en reprenant à chaque fois le nom du classeur et en rajoutant la date et heure de l'action enregistrer sous (ce qui donnerait un truc du genre "monclasseur_datedujour_heure.xls).

Merci beaucoup !
Au plaisir de vous lire, David


Pour la forme de la cellule à reproduire dans le mail ... il suffit de lire les infos dans la cellule (à insérer dans des variables) puis d'insérer en HTML. Donc, oui c'est possible.

Sauvegarder un fichier à une heure précise qu'il soit ouvert ou fermé ??
S'il est ouvert, les événements fonctionnent.
S'il est fermé, non. Les choix qu'ils restent : un autre fichier qui est ouvert à ce moment et qui contient le code ... ou encore, utilise un utilitaire tel CobianBackup. (Cobian' s site).

G
 
Dernière édition:

david54520

XLDnaute Junior
Re : attribuer une police de caractère en vba pour envoi mail

merci pour la réponse rapide.

Je vais donc tenter avec les évenements.
Pour ce qui est du langage HTML.....je suis trés loin de savoir faire.
Déjà que pour VBA, je braconne et je tente de transformer.... HTML...je n'y suis pas encore !! :)

Si des difficulté persistent, Je me permettrai de vous réinterpeller.

A bientôt

David
 

Gelinotte

XLDnaute Accro
Re : attribuer une police de caractère en vba pour envoi mail

Bonjour,

Voilà une méthode que je n'aime pas vraiment. Mais elle a l'avantage de fonctionner.

La difficulté provient du code HTML. Il n'accepte que son format de taille. I.E. une police de 11 ou 12 correspond à 3 dans le HTML, ou une taille 9 ou 10 correspond à 2 dans le HTML.

Il doit donc y avoir du code de conversion et si tu as plusieurs champs à faire varier, ça peut alourdir le code à moins qu'un plus gros cerveau que le mien ait une variante plus conviviale.

"M'enfin!" Comme disait Gaston :rolleyes:
L'important c'est que ça fonctionne.

G
 

Pièces jointes

  • Classeur1122.xlsm
    22.2 KB · Affichages: 305

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
314 628
Messages
2 111 337
Membres
111 104
dernier inscrit
JEMADA