Microsoft 365 Envoyer un mail à partir d'un choix d'une liste déroulante

yassine.013

XLDnaute Nouveau
Bonjour

Je souhaite envoyer un mail qui dépends de choix de la comboBox1 ou on trouve : ECL/IHM/SAV.
j'ai le code mais juste pour un seul destinataire
Le voila :
destinataire = "bj.dj@cccc.com"
objet_mail = "Bjr"
text = "bjbjbj"

Set oOtlook = CreateObject("Outlook.Application")
oOtlook.Session.logon

Set oEmail = oOtlook.CreateItem(0)

TotalMessage = "<FONT face=""calibri""><FONT Size = " & Chr(34) & "3,5" & Chr(34) & ">" & text & "</FONT>"

With oEmail
.To = "" & destinataire
.CC = ""
.BCC = ""
.Subject = "" & objet_mail
.bodyformat = 2
.HTMLBody = TotalMessage & oEmail.HTMLBody
End With
oEmail.send
On Error GoTo 0
End Sub

En effet j'arrive pas à trouver un code qui déprends de la comboBox1 pour 3 destinataire :

ECL : "bj.dj@cccc.com"
IHM: "bj.dj@cccc.com"
SAV: "bj.dj@cccc.com"

Merci pour vos réponses
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Yassine,
Avec un petit fichier test, cela serait plus simple.
Donc en supposant que votre code est dans un Userform et que le client est dans ComboBox1, vous pouvez essayer de remplacer :
VB:
destinataire = "bj.dj@cccc.com"
par
Code:
Select Case UserForm1.ComboBox1.Value
    Case "ECL":     destinataire = "bj.dj@cccc.com"
    Case "IHM":     destinataire = "bj.dj@cccc.com"
    Case SAV:       destinataire = "bj.dj@cccc.com"
End Select
Ainsi l'adresse changera en fonction du choix fait.
 

yassine.013

XLDnaute Nouveau
Bonjour Yassine,
Avec un petit fichier test, cela serait plus simple.
Donc en supposant que votre code est dans un Userform et que le client est dans ComboBox1, vous pouvez essayer de remplacer :
VB:
destinataire = "bj.dj@cccc.com"
par
Code:
Select Case UserForm1.ComboBox1.Value
    Case "ECL":     destinataire = "bj.dj@cccc.com"
    Case "IHM":     destinataire = "bj.dj@cccc.com"
    Case SAV:       destinataire = "bj.dj@cccc.com"
End Select
Ainsi l'adresse changera en fonction du choix fait.
Bonjour Sylvanu

Je vous remercie pour votre réponse
Voici le fichier test

en effet l'affichage de mon Userform(qui se trouve dans la feuille formulaire faf) dépends toujours de ma comboBox 3 c'est pour ça j'ai 3 feuilles ECL/IHM/SAV.

et je veux quand je rajoute une base de donnée ça envoi automatiquement à la personne qui concernée par ECL ou IHM ou SAV

J'ai fais un exemple des emails dans la feuille liste.

Merci de votre aide
 

Pièces jointes

  • Outil faf .xlsm
    67 KB · Affichages: 1

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Un essai en PJ avec :
1- J'ai enrichi le tableau TAT avec les adresses email des ateliers.
2- J'ai rajouté dans l'userform :
VB:
Private Sub ComboBox3_Change()
    Atelier = Me.ComboBox3.Value
    destinataire = Application.VLookup(Atelier, [TaT], 2, False)
    Me.eMail = destinataire
End Sub
3- Pour l'exemple, dans l'userform, j'ai rajouté le label eMail sous Atelier dont l'adresse est remise à jour en fonction du choix de l'atelier.

Dans l'userform l'adresse email est dans la variable "destinataire"
Il vous suffit d'utiliser cette variable pour l'envoi de votre mail.
 

Pièces jointes

  • Outil faf (1).xlsm
    62.9 KB · Affichages: 3

sylvanu

XLDnaute Barbatruc
Supporter XLD
Alors mettez les adresse mail dans le code comme expliqué au post #2.
VB:
Private Sub ComboBox3_Change()
    Select Case Me.ComboBox3.Value
        Case "ECL":     destinataire = "ECL_bj.dj@cccc.com"
        Case "IHM":     destinataire = "IHM_bj.dj@cccc.com"
        Case "SAV":     destinataire = "SAV bj.dj@cccc.com"
    End Select
    Me.eMail = destinataire
End Sub
 

Pièces jointes

  • Outil faf (2).xlsm
    61.6 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour
j’ai le droit ni d’ajouter ni modifier ni supprimer une colonne sur le tableau donc
Si vous avez beaucoup d'ateliers, alors une autre solution possible est de rajouter une feuille "Contacts" avec un tableau Ateliers-email. Ce serait plus simple à maintenir ou faire évoluer, et vous n'avez pas à toucher le code.
Si vous n'en avez que 3 alors "en dur dans le code" est le plus simple.
 

yassine.013

XLDnaute Nouveau
Bonjour

Si vous avez beaucoup d'ateliers, alors une autre solution possible est de rajouter une feuille "Contacts" avec un tableau Ateliers-email. Ce serait plus simple à maintenir ou faire évoluer, et vous n'avez pas à toucher le code.
Si vous n'en avez que 3 alors "en dur dans le code" est le plus simple.
J'ai fais le code que vous m'avez envoyé et ça marche comme je veux et j'ai que 3 ateliers donc ça va
 

Statistiques des forums

Discussions
312 215
Messages
2 086 325
Membres
103 179
dernier inscrit
BERSEB50