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

  1. #1
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut Mettre une codification automatique dans l'objet d'un mail

    Bonsoir,
    Je cherche une macro VBA dans Outlook (novice sur VBA Outlook, moins sur Excel :-)) qui me permettrait de mettre automatiquement une codification dans l'objet du mail. Je m'explique:

    Les codes de diffusion ci-dessous en gras permettent à chaque destinataire de gagner du temps lors de la réception d’un mail. Cela permet aussi à l’expéditeur de clarifier sa demande. Des codes simples à mettre en œuvre pour un résultat impactant :

    • [AR] + objet du mail => action requise
    • [LR] + objet du mail => lecture requise
    • [RR] + objet du mail => réponse requise
    • [PVI] + objet du mail => pour votre information
    • [URGENT] + objet du mail => urgent
    • [IMPORTANT] + objet du mail => important


    Le processus serait :
    • Solution 1 : Avoir un raccourci clavier (différent par codification) permettant d'ouvrir un nouveau message dans Outlook, incluant ma signature et automatiquement le code de diffusion entre [] (voir codification ci-dessus). A moi de rajouter ensuite l'objet du mail

    ou


    • Solution 2 : Ouvrir un nouveau message avec signature et en cliquant sur une touche de fonction, préalable associée à une macro, définir le code de diffusion entre [] (voir codification ci-dessus) répondant à mon besoin. A moi de rajouter ensuite l'objet du mail


    Merci pour votre aide

  2. #2
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    mars 2006
    Messages
    3 457
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : mars 2006
    Messages : 3 457
    Points : 5 999
    Points
    5 999
    Billets dans le blog
    16

    Par défaut

    Bonjour,

    C'est sans doute mieux de tester lorsque tu cliques sur Envoyer.

    à mettre dans ThisOutlookSession

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    '---------------------------------------------------------------------------------------
    ' Procedure : Application_ItemSend
    ' Author    : OLiv-
    ' Purpose   :
    '---------------------------------------------------------------------------------------
     
    ' on verifie que c'est un mail
        If Not Item.Class = olMail Then Exit Sub
     
        If InStr(1, Item.Subject, "[") = 0 Then
     
            Choix = InputBox("1-[AR] action requise" & vbCr & "2-[LR] lecture requise" & vbCr & "3-[RR]réponse requise" & vbCr & _
                             "4-[PVI] pour votre information" & vbCr & "5-[URGENT] urgent" & vbCr & "6-[IMPORTANT] important", "Voulez-vous ajouter un code ?")
            If Choix <> "" Then
     
                Item.Subject = Choose(Choix, "[AR]", "[LR]", "[RR]", "[PVI]", "[URGENT]", "[IMPORTANT]") & "-" & Item.Subject
            End If
     
        End If
    End Sub
    Tu peux optimiser la présentation en utilisant un Userform et des boutons radio.
    https://silkyroad.developpez.com/VBA/UserForm/ (c'est pareil pour OUTLOOK)

  3. #3
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Un très grand merci
    J'adore :-)

  4. #4
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Oliv
    J'ai testé tout l'après midi et je trouve cela top.
    J'ai juste un petit bémol, car il n'y a pas la possibilité de visualiser ce que l'on a mis avant envoi. Du coup, on ne peut pas modifier ce qui pourrait quelquefois être un peu "préjudiciable.
    Aurais tu une astuce pour cela ? Il faudrait qu'une fois qu'on est renseigner le numéro, l'objet s'affiche et ensuite on envoi
    Merci pour ton aide

  5. #5
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    mars 2006
    Messages
    3 457
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : mars 2006
    Messages : 3 457
    Points : 5 999
    Points
    5 999
    Billets dans le blog
    16

    Par défaut

    SAlut,


    avant End If
    End Sub

    tu peux mettre

  6. #6
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Top, merci Oliv, tout fonctionne et j'adore cette macro, vraiment utile au quotidien
    A bientôt sur le forum pour de nouvelles aventures

  7. #7
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Bonsoir Oliv,

    J'ai retravaillé la macro afin de la rendre plus fonctionnel en intégrant de nouvelles données :-) J'ai essayé de mettre des explications par ligne de code et je souhaiterai avoir ton feedback

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
     
        'Permet de verifier qu'il s'agit bien d'un mail ouvert. S'il ne s'agit pas d'un mail alors la macro ne s'executera pas
            If Not Item.Class = olMail Then Exit Sub
     
        'Fonction VBA InStr() permet de tester si un texte contient une chaine de caracteres specifiee et si oui, elle permet de savoir ou cette chaine se trouve dans le texte. 
            If InStr(1, Item.Subject, "[") = 0 Then
     
         'Ouverture d'une fenetre contenant les instructions et les codes de diffusion
            Choix = InputBox("Pour rajouter un code de diffusion, entrez le numero correspondant puis valider, sinon cliquer sur la touche Annuler" & vbCr & vbCr & "1- ACTION REQUISE" & vbCr & "2- CONFIDENTIEL" & vbCr & "3- IMPORTANT" & vbCr & _
                             "4- LECTURE REQUISE" & vbCr & "5- PERSONNEL" & vbCr & "6- POUR INFORMATION" & vbCr & "7- R?PONSE REQUISE" & vbCr & "8- URGENT", " Voulez-vous ajouter un code de diffusion ?")
            If Choix <> "" Then
     
         'Apres choix du code de diffusion, integration devant l'objet du mail (Item.Subject)
            Item.Subject = Choose(Choix, "[ACTION REQUISE]", "[CONFIDENTIEL]", "[IMPORTANT]", "[LECTURE REQUISE]", "[PERSONNEL]", "[POUR INFORMATION]", "[R?PONSE REQUISE]", "[URGENT]") & "-" & Item.Subject
            End If
     
        End If
    End Sub
    Pourrais tu me valider les explications. D'autre part, j'essaye de donner une explication du code
    ByVal Item As Object, Cancel As Boolean
    mais sans succès.

    Merci pour ton aide
    Bonne soirée

  8. #8
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    mars 2006
    Messages
    3 457
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : mars 2006
    Messages : 3 457
    Points : 5 999
    Points
    5 999
    Billets dans le blog
    16

    Par défaut

    Bonjour,

    ByVal Item As Object, Cancel As Boolean sont des variables d'événements,

    item désigne l'élément déclencheur (le mail)
    cancel s'il a la valeur true, annule l'événement (ici l'envoi)

    avec d'autres événements il peut y avoir d'autres variables
    ou
    https://docs.microsoft.com/en-us/off...tlook.mailitem
    voir events

  9. #9
    Membre à l'essai
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    décembre 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : décembre 2016
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Merci Oliv,
    J'ai bien compris et je vais étudier le document que tu m'as transmis
    Concernant les autres lignes explicatives du code, tu me confirmes que j'ai bien tout compris
    Merci à toi

Discussions similaires

  1. hibernate mettre a jour une hashmap contenu dans un objet
    Par FuSsA dans le forum Frameworks Web
    Réponses: 0
    Dernier message: 12/08/2015, 10h35
  2. mettre c.EmprunteurId__r.Name dans l'objet d'un mail
    Par max33370 dans le forum Salesforce.com
    Réponses: 3
    Dernier message: 14/11/2014, 15h47
  3. Réponses: 1
    Dernier message: 10/11/2005, 17h02
  4. Insérer une ligne automatiquement dans une autre tab
    Par davyd dans le forum Langage SQL
    Réponses: 10
    Dernier message: 29/03/2005, 18h08
  5. Réponses: 2
    Dernier message: 08/08/2003, 18h30

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