Re,
premier bout= création d'un message avec le texte qui va dedans
deuxième bout= est appelé dans le premier morceau ici:
.HTMLBody = "<HTML><BODY>" & tableHTML(Range("a1", "c5")) & "</BODY></HTML>"
il permet de convertir une plage de cellules en un code HTML qui correspondera à un tableau avec lignes, colonnes, et couleurs de cellules
troisième bout= est appelé dans le deuxième morceau, en HTML, pour affecter une couleur à une cellule, ils utilisent de l'hexadécimal, le problème, c'est que la couleur de la cellule n'est pas dans ce format, cette fonction sert donc à convertir la valeur d'Excel en quelque chose d'exploitable en HTML
D'ailleurs j'aurais dû la déclarer Private, je corrige ça et te retourne le fichier:
En clair la façon d'utiliser tout ça: tu pourras t'inspirer du premier bout de code pour créer un message et l'envoyer, et utiliser la fonction tableHTML(plage as Range) pour convertir une plage de cellules en code HTML
EDIT: J'ai changé le fichier attaché au message, il est désormais plus complet en terme de codage