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 :

Spécifier les destinataires d'une réponse d'un vote (via le bouton de vote)


Sujet :

VBA Outlook

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 100
    Points : 56
    Points
    56
    Par défaut Spécifier les destinataires d'une réponse d'un vote (via le bouton de vote)
    Bonjour,

    J'envoie actuellement un mail à partir d'un modèle de mail Outlook (*.oft) que je complète en récoltant des informations à partir fichier Excel.

    Je dois ajouter un bouton de vote à ce mail. Pour cela j'ai ajouté la proriété MailItem.VotingOptions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MailItem.VotingOptions = "OUI;NON"
    Cela fonctionne mais la réponse au vote est envoyée uniquement à l'expéditeur du mail.
    Le problème est que j'aurai besoin d'envoyer la réponse du vote à toutes les qui reçoivent le mail initial.

    Les personnes qui reçoivent ce mail sont ajoutés avec les propriétés suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MailItem.To
    MailItem.CC

    Manuellement, dans Outlook, nous pouvons paramétrer l'option "Envoyer les réponses à" lorsque nous personnalisons un bouton de vote (onglet Option --> utiliser les boutons de vote --> Personnalisé... --> Envoyer les réponses à)


    J'ai recherché mais je ne trouve pas de propriétés permettant de paramétrer cette option.
    Auriez-vous une idée de comment paramétrer une liste de destinataire pour la réponse au vote ?

    Par avance, merci.

  2. #2
    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,
    Je pense que c'est
    mailitem.replyto

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 100
    Points : 56
    Points
    56
    Par défaut
    Bonjour Oliv-,

    Merci pour votre réponse.

    J'ai testé plusieurs choses avec mailitem.replyto ou mailitem.ReplyAll mais ça ne fonctionne pas.
    J'ai des erreurs 438 (propriété ou méthode non gérée par cet objet) ou 440 (échec de l'opération).

    Ci-dessous le début de ma macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim Email As Object
    Set OFTEmail = CreateObject("Outlook.Application")
    Set Email = OFTEmail.CreateItemFromTemplate("C:\Users\user\Documents\mail.oft")
     
    Email.To = "aaa@xxx.xx"
    Email.CC = "bbb@xxx.xx;ccc@xxx.xx"
     
     
    'TEST bouton vote
    Email.VotingOptions = "OUI;NON"
    'Email.ReplyAll = "bbb@xxx.xx;ccc@xxx.xx;expediteur@xxx.xx"
    Email.ReplyTo = "bbb@xxx.xx;ccc@xxx.xx;expediteur@xxx.xx"
    Pourriez-vous m'aiguiller sur comment utiliser cette propriété dans mon contexte ?

    Par avance, merci.

  4. #4
    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
    Effectivement je me suis trompé c'est ReplyRecipients.Add


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub test()
    Dim oItem As Outlook.MailItem
    Set oItem = CreateItem(olMailItem)
     
    oItem.ReplyRecipients.Add "toto@toto.fr"
    oItem.ReplyRecipients.Add "titi@toto.fr"
    oItem.Display
    End Sub

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 100
    Points : 56
    Points
    56
    Par défaut
    Bonjour Oliv-,

    Merci beaucoup pour votre réponse.
    J'ai donc pu avancer et cela fonctionne.

    Voici mon petit bout de code :

    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
    Dim Email As Object
    Set OFTEmail = CreateObject("Outlook.Application")
    Set Email = OFTEmail.CreateItemFromTemplate("C:\Users\user\Documents\mail.oft")
     
    Email.To = "aaa@xxx.xx"
    Email.CC = "bbb@xxx.xx;ccc@xxx.xx"
     
     
    'TEST bouton vote
    Email.VotingOptions = "OUI;NON"
     
    ' Je dois récupérer les adresses mails à partir d'un fichier Excel (ExcelBook configuré plus haut dans le code) :
    Dim EmailReplyRecipients As String
    Dim EmailReplyRecipients2 As String
    EmailReplyRecipients = ExcelBook.Worksheets("feuil1").Range("B5").Value
    EmailReplyRecipients2 = ExcelBook.Worksheets("feuil1").Range("B6").Value
    Email.ReplyRecipients.Add EmailReplyRecipients
    Email.ReplyRecipients.Add EmailReplyRecipients2
    Connaissez-vous une solution afin d'avoir uniquement une seule fois la propriété "Email.ReplyRecipients.Add" pour plusieurs adresses mails ?
    J'essaie de travailler là-dessus mais je n'ai pas trouvé pour le moment.

    Par exemple, dans le fichier Excel j'aurai en B5 cette valeur ccc@xxx.xx;ddd@xxx.xx;eee@xxx.xx;fff@xxx.xx (ou éventuellement une autre celui comment le vba peut l'interprêter)
    Et dans le code j'aurai donc une seule ligne "Email.ReplyRecipients.Add" :

    ' Je dois récupérer les adresses mails à partir d'un fichier Excel (ExcelBook configuré plus haut dans le code) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim EmailReplyRecipients As String
    EmailReplyRecipients = ExcelBook.Worksheets("feuil1").Range("B5").Value
    Email.ReplyRecipients.Add EmailReplyRecipients
    Merci !

  6. #6
    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
    Non il faut faire une ligne de code par destinataire.

    en utilisant split cela permet de decouper les données
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub test()
    Dim MonSplit As Variant
    Dim i
    MonSplit = Split("ccc@xxx.xx;ddd@xxx.xx;eee@xxx.xx;fff@xxx.xx", ";")
    For i = 0 To UBound(MonSplit)
    MsgBox MonSplit(i)
    Email.ReplyRecipients.Add MonSplit(i)
    Next i
     
    End Sub

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 100
    Points : 56
    Points
    56
    Par défaut
    Merci Oliv- ça fonctionne.

    J'ai pu adapter le code afin de correspondre au besoin complet !

    problème résolu

Discussions similaires

  1. Properties : comment spécifier les paramètres d'une property ?
    Par guilhemr dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 21/04/2008, 13h57
  2. Réponses: 5
    Dernier message: 24/03/2008, 19h49
  3. [XML] [XML-RPC] retrouver les infos d'une réponse serveur
    Par arnolem dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 07/08/2006, 12h07

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