Bonjour,
Je dois actuellement développer une application excel permettant à l'utilisateur de choisir (parmi une liste prédéfinie) un mail type et que selon le mail type sélectionné, s'affiche des textbox pour que l'utilisateur remplisse les informations nécessaires pour remplir les parties du mail type qui contient des balises (exemple : #TEL) pour les remplacer par ce qu'il doit mettre. Voici un exemple de ce que j'ai fait
Jusque la tout va bien, ce type de code ne me pose pas de problème.
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
22
23
24
25 Private Sub ChoixMailType_Change() '///////////////////////// 01 ////////////////// If ChoixMailType.Value = "01-ASTREINTE IM Samedi XX.oft" Then For Each Ctrl In Me.Controls If TypeName(Ctrl) = "Label" And Ctrl.Name <> "LabelJM01" And Ctrl.Name <> "LabelTel01" Then Ctrl.Visible = False Else If TypeName(Ctrl) = "TextBox" And Ctrl.Name <> "TextBoxJM01" And Ctrl.Name <> "TextBoxTel01" Then Ctrl.Visible = False Else If TypeName(Ctrl) = "ComboBox" And Ctrl.Name <> "ChoixMailType" Then Ctrl.Visible = False Else If TypeName(Ctrl) = "CommandButton" And Ctrl.Name <> "Valider" Then Ctrl.Visible = False Else Ctrl.Visible = True End If End If End If End If Next Ctrl End If End Sub
Vient ensuite la partie mail, lorsque l'utilisateur a rentré ses données dans les textbox, il faut qu'il appuie sur le bouton valider.
J'avais déjà du gérer l'envoie de mail par vba, mais tout était créé en HTML, je pourrai procéder de la même façon sauf que j'ai 29 mails types donc impossible.
Voici le code (non fonctionnel) pour la partie mail. Ce que je veux que ce code fasse est que il ouvre le mail outlook en changeant les balises adéquates.
En espérant avoir bien détaillé mon problème et que quelqu'un puisse m'apporter son savoir !
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 Private Sub Valider_Click() Dim AD As String AD = ThisWorkbook.Path & "\" & MailingType.ChoixMailType.Value 'MailingType étant le formulaire et ChoixMailType le combobox contenant la liste des mails types. If ChoixMailType.Value = "01-ASTREINTE IM Samedi XX.oft" Then Set AppOtk = CreateObject(Outlook.Application) 'le bug est à cette ligne Set DocOft = AppOtk.Session.OpenSharedItem(AD) With DocOft .Bookmarks("#JM").Range.Text = TextBoxJM01.Value .Bookmarks("#TEl").Range.Text = TextBoxTel01.Value End With End If Unload Me End Sub
Merci !
Partager