Developpez.com - Rubrique Excel

Le Club des Développeurs et IT Pro

Découvrez des fonctions en VBA pour générer des courriels depuis Excel

Un tutoriel de Laurent Ott

Le 2022-05-20 16:32:19, par laurent_ott, Rédacteur
Bonjour,
J'ai le plaisir de vous présenter une nouvelle documentation :



Dans cet article, vous allez découvrir des fonctions en VBA pour générer des courriers électroniques depuis Excel et les envoyer par Outlook.
Ces courriels pourront contenir des textes formatés ainsi que des liens hypertextes, des tableaux, des plages de données, des graphiques ou des images.

Vous pouvez déposer vos commentaires dans cette discussion.
Bonne lecture.
  Discussion forum
7 commentaires
  • Bonjour Bruno,
    Il y a différents types de procédures et une "function" comme une "Sub" en font partie.

    A lire éventuellement Procédures dans Visual Basic
  • laurent_ott
    Rédacteur
    Bonjour,
    Pour être encore plus précis, une fonction renvoie quelque chose (le verbe anglais Return est parfois assimilé au verbe français Retourner, mais renvoyer et retourner ce n'est pas la même chose).

    Bonne programmation à vous tous.
  • ONTAYG
    Membre éprouvé
    Bonjour,

    Tuto intéressant et bien expliqué, surtout pour éviter d'utiliser à fond les balises HTML qui peut rendre les choses illisibles.

    Tu aurais pu rajouter un petit chapitre pour récupérer également la signature.

    ONTAYG
  • Bonjour Philippe et merci d'être passé

    Je pense qu'on ne se comprend pas, mais ce n'est pas important... je pense que c'est juste trompeur pour celui qui débute 🤔

    Laurent indique sur son tuto "Fonctions en VBA pour générer des courriels depuis Excel"
    Or, ce ne sont que des procédures Sub qui y figurent
    Code :
    Sub Mail_Texte
    Code :
    Sub Mail_SautDeLigne
    Si on regarde son autre tutoriel (très bien fait aussi)
    Fonctions en VBA pour gérer les Tableaux Structurés d’Excel
    https://laurent-ott.developpez.com/t...ux-Structures/

    Alors la oui, ce sont biens des fonctions

    C'est juste "grammaticalement" incorrecte à mes yeux

    Bon dimanche 😉
  • deedolith
    Membre expérimenté
    Hello,

    C'est sympathique, cependant j'ai quelques remarques:

    - Tu assumes que le classeur Excel, et la feuille de travail sont forcément actif. Rien n'est aussi faux. Tu ne sais pas ce que le code appelant tes fonctionnalités à fait avant, ni ce qu'il fera après.
    - C'est très dommage, lorsque tu accède au système de fichier, de passer les vieilles fonctionnalités VB alors que la librairie FSO est plus robuste, et plus explicite.
    - Le notation hongroise n'a pas lieu d'être dans un code moderne, les types de données ne sont utile que pour le compilateur, et un bon nom de variable doit définir son rôle (un type n'est pas un rôle).
    - Un développement orienté objet ne serait-il pas approprié ? Je trouve qu'une batterie de fonctions commençant toutes par le même préfixe est dommage.
    - Le dossier temporaire est donné par la variable d'environnement TEMP, la méthode GetSpecialFolder de l'objet FSO peut également te la donner (je la préfère car une énumérations est plus fiable qu'une chaine de caractères).
    - La gestion du dossier Mail mérite d'être factorisé dans une fonction séparée, afin de minimiser les redondances.
    - Ce n'est pas faux de détruire les objets quand tu n'en as plus besoin, perso, je préfère faire confiance au ramasse miettes.'
  • Bonjour,

    Juste de passage 😉

    Le tutoriel est très bien fait, mais c'est étrange de la part de Laurent_ott de confondre "Fonction" avec "Procédure" ou "Sub" 🤔

    Une fonction retourne une valeur... non ?
  • Envoyé par laurent_ott
    Bonjour,
    Pour être encore plus précis, une fonction renvoie quelque chose (le verbe anglais Return est parfois assimilé au verbe français Retourner, mais renvoyer et retourner ce n'est pas la même chose).

    Bonne programmation à vous tous.
    Et sinon à part ce cours de français sans aucun intérêt pour moi... aucune réponse à mon questionnement
    Aurais-je appuyé ou ça fait mal 🤔😆