Bonjour,
Je cherche un code pouvant, selon la sélection d'un optionbutton afficher une date j+1 ou j+2 ou ouverture d'un calendrier pour sélection d'un jour personnalisé.
En sélectionnant priorité basse : J+2 (en élminant les jours fériés, samedi et dimanche)
Moyenne et haute : J+1 (en élminant les jours fériés, samedi et dimanche)
Voici mon code fonctionnel :
Le cmdCancel_Click annule et relance le formulaire
Le cmdConfirm_Click envoie les données récoltées du userform vers ma plage de données
Le CommandButton26_Click intialise mon numéro de dossier
Merci pour vos indiactions :-)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120 Private Sub cmdCancel_Click() Dim Ctrl As Control 'efface textbox For Each Ctrl In Me.Controls("Frame1").Controls If TypeName(Ctrl) = "TextBox" Then Select Case Ctrl.Name Case Else Ctrl.Value = "" End Select End If Next 'efface optionbutton For Each Ctrl In Me.Controls("Frame1").Controls If TypeName(Ctrl) = "OptionButton" Then Ctrl.Value = False Next Ctrl For Each Ctrl In Me.Controls("Frame1").Controls If TypeName(Ctrl) = "ComboBox" Then Select Case Ctrl.Name Case Else Ctrl.Value = "" End Select End If Next End Sub Sub cmdConfirm_Click() Dim Ctrl As Control Dim Ctrl1 As Control Sheets("DATA").Activate 'Positionnement dans la table [A65000].End(xlUp).Offset(1, 0).Select 'Transfert des données formulaire dans BD 'frame priorité ActiveCell.Value = Application.Proper(Me.NumCall) For Each Ctrl In Frame2.Controls If Ctrl.Object.Value = True Then ActiveCell.Offset(0, 1).Value = Ctrl.Object.Caption Exit For End If Next Ctrl ActiveCell.Offset(0, 2).Value = Me.txtDate ActiveCell.Offset(0, 3).Value = Me.ActionAgent ActiveCell.Offset(0, 4).Value = Me.ComboTypeCall ActiveCell.Offset(0, 5).Value = Me.ResaCmde ActiveCell.Offset(0, 6).Value = Me.Outbound ActiveCell.Offset(0, 7).Value = Me.Article ActiveCell.Offset(0, 8).Value = Me.Lot ActiveCell.Offset(0, 9).Value = Me.Objet 'rafraichi frame 'efface textbox For Each Ctrl1 In Me.Controls("Frame1").Controls If TypeName(Ctrl1) = "TextBox" Then Select Case Ctrl1.Name Case Else Ctrl1.Value = "" End Select End If Next 'efface optionbutton For Each Ctrl1 In Me.Controls("Frame1").Controls If TypeName(Ctrl1) = "OptionButton" Then Ctrl1.Value = False Next Ctrl1 For Each Ctrl1 In Me.Controls("Frame1").Controls If TypeName(Ctrl1) = "ComboBox" Then Select Case Ctrl1.Name Case Else Ctrl1.Value = "" End Select End If Next 'recharge la date du jour txtDate.Value = Date 'message fin MsgBox "Call créé", vbInformation, "Création du call" 'cacher bouton valider ticket cmdConfirm.Visible = False 'relance End Sub Private Sub CommandButton26_Click() NumCall.Value = Format(Now, "ddmmyyyyhhnnss") cmdConfirm.Visible = True End Sub Private Sub UserForm_Initialize() 'charge la date du jour (non visible) txtDate.Value = Date 'cacher bouton valider ticket cmdConfirm.Visible = False 'Type de demande ComboTypeCall.AddItem "demande urgente" ComboTypeCall.AddItem "demande anticipée" ComboTypeCall.AddItem "information(s)" ComboTypeCall.AddItem "recyclage" ComboTypeCall.AddItem "annulation de commande" ComboTypeCall.AddItem "modification Master data" ComboTypeCall.AddItem "matériel magasin" ComboTypeCall.AddItem "urgence SAE" End Sub
Partager