Attribuer une valeur secondaire combobox

Fermé
Goth!er Messages postés 15 Date d'inscription jeudi 10 novembre 2016 Statut Membre Dernière intervention 25 avril 2018 - 20 avril 2018 à 11:37
Goth!er Messages postés 15 Date d'inscription jeudi 10 novembre 2016 Statut Membre Dernière intervention 25 avril 2018 - 25 avril 2018 à 09:47
Bonjour le Forum ,

j'ai créé un userform avec des combobox , je souhaite qu'en selectionnant le nom d'un utilisateur (item du combobox) pouvoir envoyer un email à cette personne .

Ex : en selectionnant dans la combobox TOTO , en cliquant sur le bouton . La valeur liée soit toto@toto.com

Private Sub UserForm_Initialize()
With Me.ComboBox4
ComboBox4.AddItem "Toto"
ComboBox4.AddItem "Titi"
ComboBox4.AddItem "Tata"
ComboBox4.AddItem "Tete"


End With
End Sub


pour la liste du combo


Private Sub CommandButton1_Click()
Dim gsm As String
Dim dC As Date
Dim dCT As Date
Dim oOutlook As Outlook.Application
Dim oAppointment As Outlook.AppointmentItem
Dim namespaceOutlook As Outlook.Namespace
Dim DossierCalendrier As Outlook.MAPIFolder
Dim myItem As Object, myRequiredAttendee As Outlook.Recipient





Cells(1, 1) = DTPicker1
dC = Cells(1, 2)
dCT = "17:00:00"
gsm = TextBox1

Sheets("Sheet1").Visible = True
'rappel du rdv
Set OlApp = CreateObject("Outlook.application")
Set OlItem = OlApp.CreateItem(olMailItem)
With OlItem
.To = gsm & "@sms.sms" 'Range("G1").Value
.Subject = ""
.Body = "Rappel: " & ComboBox1 & " " & TextBox2 & ",nous vous confirmons votre rendez vous du " & DTPicker1 & " à " & ComboBox2 & ComboBox3
.DeferredDeliveryTime = dC & " " & dCT
.Send
End With
'confirmation du rdv
Set OlApp = CreateObject("Outlook.application")
Set OlItem = OlApp.CreateItem(olMailItem)
With OlItem
.To = gsm & "@sms.sms" 'Range("G1").Value
.Subject = ""
.Body = ComboBox1 & " " & TextBox2 & ",nous vous confirmons votre rendez vous du " & DTPicker1 & " à " & ComboBox2 & ComboBox3
.Send


End With
'création du rdv dans l'agenda
Set oOutlook = CreateObject("Outlook.Application")
Set myItem = oOutlook.CreateItem(olAppointmentItem)
myItem.MeetingStatus = olMeeting



On Error GoTo Err_Execution

Set oOutlook = CreateObject("Outlook.Application")
Set myItem = oOutlook.CreateItem(olAppointmentItem)
myItem.MeetingStatus = olMeeting
myItem.Subject = "Rendez-vous avec " & ComboBox1 & " " & TextBox2 'Sujet du rdv
myItem.Body = TextBox3
myItem.Location = ComboBox3 'Lieu du rdv
myItem.Start = DTPicker1 & " " & ComboBox2
myItem.Duration = 90
Set myRequiredAttendee = myItem.Recipients.Add(ComboBox4)
myRequiredAttendee.Type = olRequired
myItem.Send

Set myItem = Nothing
Set oOutlook = Nothing

Fin_Execution:
MsgBox "SMS envoyé au client et RDV fixé dans l'agenda"

Unload Me
Userform1.Show
Exit Sub
Err_Execution:
MsgBox Err.Description, vbExclamation
Resume Fin_Execution






Exit Sub



Unload Me
UserForm.Show

Sheets("Sheet1").Visible = False
End Sub


Le userform , envoie un sms de confirmation de rendez vous au contact (via outlook), un rappel du rendez vous la veille à 17 h, ajoute le rendez-vous dans l'agenda du collègue (sur base du combobox4 soit TOTO) qui devrait donc relier à l'email : toto@toto.com .

De plus si quelqu'un a la solution pour creer le rendez-vous dans l'agenda partagé directement du collègue plutot que d'en créer un dans mon agenda et d'inviter le collègue au rendez vous ... ce serait vraiement le TOP .. mais c'est secondaire !

Merci d'avance .

1 réponse

Goth!er Messages postés 15 Date d'inscription jeudi 10 novembre 2016 Statut Membre Dernière intervention 25 avril 2018
25 avril 2018 à 09:47
J'ai finalement resolu mon soucis en inscrivant les données des combos dans une feuille et en utilisant les:

combobox1.column(1)
0