IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Outlook Discussion :

Comment modifier le texte d'un mail avant son envoi ? [OL-2013]


Sujet :

VBA Outlook

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut Comment modifier le texte d'un mail avant son envoi ?
    Bonjour,

    J'ai une application tierce qui me génère un email (qui s'ouvre à la lecture écran avant de pouvoir l'envoyer) à un client avec une pièce jointe et un texte.

    Malheureusement, ce texte ne me convient pas.

    Savez-vous s'il est possible de remplacer tout ce texte par un autre automatiquement ?

    Je cherche une solution du style :

    si textetrouvé = "Veuillez trouver ci-joint votre document"
    Alors
    supprimer tout le texte
    écrire "Voici le document scanné"


    P.S. : je n'ai jamais fait de vba sous outlook.... Please soyez indulgent

    Merci par avance
    Thibault

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 594
    Points : 34 263
    Points
    34 263
    Par défaut
    Salut,

    pour arriver a tes fins, il va te falloir apprendre quelques rudiments de VBA.

    Le code pourra etre lance lors de l'envoi grace a l'evenement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
     
    End Sub
    un peu de lecture pour la suite :
    http://dolphy35.developpez.com/article/outlook/vba/
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut
    Merci beaucoup Jean-Phillipe pour cette piste.

    J'utilise un peu le vba access et excel. Mais j'ignore tout des méthodes, objets d'outlook.
    Je vais chercher

    Bonne soirée.
    Thibault

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut
    J'ai lu, cherché et j'ai appliquer ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Item.Body = Replace(Item.Body, "texte à changer", "texte changé")
    MsgBox "Envoi d'un mail"
    End Sub
    Mais j'ai un pb de fonctionnement :
    - si je crée manuellement un nouvel email et l'envoi : le code fonctionne

    - mais si mon application tierce crée le mail outlook (en aperçu avant envoi) : cela ne se déclenche pas

    J'ai remarqué que manuellement mon mail est en format html mais l'application tierce, elle, le fait en mode Texte brut


    Auriez-vous une solution ?

    Merci
    Thibault

  5. #5
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Bonjour,
    Les événements comme Application_ItemSend ne fonctionnent pas dans ce mode d'envoi qui est identique à l'option "envoyer vers destinataire".

    Soit il faut créer un complèment .com
    https://www.developpez.net/forums/bl...dll-com-addin/

    Soit il faut cliquer sur enregistrer lorsque le mail apparaît, fermer la fenêtre, le réouvrir à partir des brouillons, l'envoyer et là l'événement se déclenchera.

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 683
    Points : 237
    Points
    237
    Par défaut
    Merci beaucoup à vous 2 pour m'avoir répondu.



+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment modifier du texte en fonction d'un bouton radio ?
    Par Oli_Ifre dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/04/2007, 13h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo