Fonction TABLEAU_HTML-AVANCE pour envoie mail en VBA

Bonjour,

Après plusieurs heures sur les forums, j'ai réussi à créer une macro qui m'envoie un mail à partir d'un bouton sur une feuille de calcul via la plateforme "Mailjet". C'est ce que je voulais…. cà c'est top!!!

L'ensemble fonctionne bien sauf la mise en page du tableau dans le corps du mail lorsqu'il a subit la conversion en HTML avec la fonction TABLEAU_HTML_AVANCE. (Je vous laisse voir l'exemple en PJ)

Je ne sais pas comment faire pour résoudre ce problème d'autant que le language HTML m'est totalement inconnu.

Je remercie d'avance celles et ceux qui me trouveront une solution.

Bon week-end,

Denis

94mail-recu.pdf (841.47 Ko)
84fevrier-2020.xlsm (90.20 Ko)

Bonsoir,

je n'ai pas accès aux références XLP.xlam...

du coup pas grand chose à dire...

Juste une question : le tableau ainsi envoyé est-il destiné à être modifier ?

Si non, pourquoi ne pas envoyer une image de la feuille Excel ?

@ bientôt

LouReeD

Bonsoir,

Merci pour votre retour,

Non, effectivement, le tableau n'est pas du tout destiné à être modifié. J'avais pensé à l'envoie de la feuille au format image mais je ne parviens pas à écrire le code en VBA.

Pouvez-vous m'aider à le rédiger?

Merci d'avance pour votre un coup de main.

Denis B

Avec l'enregistreur de macro faite une exportation au format PDF, c'est très actuel comme format !

Après le fichier sera envoyé en pièce jointe.

@ bientôt

LouReeD

Bonsoir,

Je viens d'essayer mais je ne vois pas comment faire pour ensuite insérer le pdf dans le mail.

Avec l'enregistreur de macro, j'arrive jusqu'à la fenêtre pour nommer le fichier pdf et l'enregistrer. Pour autant, ce n'est pas ce que je veux faire

Je veux utiliser le code que j'ai dans le tableau excel joint et je veux juste insérer une image de ma feuille excel sur la plage de cellules A1:H113.

Ci- dessous les deux tentatives VBA que j'ai testé:

La première (Qui ne me permet pas d'utiliser mon interface mailjet)

Sub Envoimail()

'Declaration des variables
Dim MaFeuille As Worksheet
Dim Nbligne As Integer

'Affectation des variables
Set MaFeuille = ThisWorkbook.Sheets("Modèle vierge")

'Désactivation du rafraichissement de l'écran
Application.ScreenUpdating = False

'On calcule le nombre de ligne à prendre en compte dans la colonne A
Nbligne = MaFeuille.Range("A" & Application.Rows.Count).End(xlUp).Row

'On sélectionne la plage à copier
MaFeuille.Range("A1:H" & Nbligne).Select

'Avec l'objet mail enveloppe, on envoie dans le corps du mail
With Selection.Parent.MailEnvelope.Item
    .To = MaFeuille.Range("I1").Value  'Destinataire direct du mail
    .Cc = "prmillau@gmail.com"
    .Bcc = "bousquet.denis@yahoo.fr"
    .Subject = "Le suivi de vos objectifs annuels d'achats de pièces détachées chez BOUSQUET&fils automobiles"
    .Send 'On envoie le mail

End With

MsgBox "Votre mail a bien été envoyé", vbInformation + vbOKOnly, "Confirmation envoi"

Application.ScreenUpdating = True

End Sub

Et la deuxième, plus simple, mais qui ne me convient pas pour le format (c'est pour çà que j'écris)!!!

Sub Exemple()

contenu = "<h1>Vos chiffres du mois</h1>" & TABLEAU_HTML_AVANCE(Range("A1:H113"))

    mail "bousquet.denis@yahoo.fr", "d.bousquet@bousquet-automobiles.com", "Le suivi de votre RFA BOUSQUET & fils automobiles", contenu, "123456789", "123456789", "SUIVI RFA SEMESTRIELLE BOUSQUET & FILS"

End Sub

Est-ce qu'un combiné des 2 macros est jouable? Mais là, çà dépasse mes compétences et je tourne en rond depuis longtemps.

Merci pour votre coup de main un peu plus détaillé.

Bon week-end,

Denis

Bonjour,

je suis parti de votre fichier sur lequel je ne fais pas référence à votre pack XLP.

J'ai glané sur le net deux procédure d'extraction de plage en JPG, puis une procédure d'envoie de mail.

Sur cette dernière il faudra travailler pour corriger les adresse et les textes, mais dans l'ensemble cela fonctionne.

Le fichier :

@ bientôt

LouReeD

Attention ! Ce code ne fait aucun test quant à l'existence du chemin d'enregistrement de l'image et de l'existence de l'image !

En somme si l'image existe déjà, elle ne sera pas remplacée !

Il faudrait donc supprimer le JPG une fois le mail envoyé !

@ bientôt

LouReeD

Bonsoir,

Je viens de prendre connaissance du code. Merci beaucoup pour ce retour.

Je teste çà dès demain lorsque j'aurai mis à jour les adresses et le texte. Je ne manquerai pas de vous faire un retour.

Bonne soirée,

Denis

Bonne soirée @ vous également !

@ bientôt

LouReeD

Bonjour,

un demain de 14 jours !

Bon d'accord, avec le confinement...

Alors ça marche ?

@ bientôt

LouReeD

Rechercher des sujets similaires à "fonction tableau html avance envoie mail vba"