Bonjour,

Par le biais d'un cmdbouton, je veux contrôler puis valider les saisies faites par l'utilisateur par le biais d'un userform.

Tant que je ne contrôlais par le format date de l'objet TxtJourDemandePref tout se passait bien mais depuis l'ajout de cette instruction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
'On teste la saisie de la date de la demande
 
If Not IsDate(TxtJourDemandePref) Then MsgBox "Vous devez saisir une date de versement au format jj/mm/aaaa"
Me.TxtJourDemandePref.SetFocus
 
Exit Sub
Si la date est correcte, plus rien ne se passe, je reste sur mon formulaire...

A noter que quand je mets end if, il m'est précisé que j'ai un code end if sans if.....


Sinon la procédure complète est :

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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
Private Sub CmdValiderPréfecture_Click()
'faire vérifier les saisies faites
Msg = "avez vous vérifié vos saisies ?"
Style = vbYesNo
Title = "vérification des informations saisies Préfecture LMH"
réponse = MsgBox(Msg, Style, Title)
If réponse = vbNo Then
Me.cmbchargéPref.SetFocus
 
 Exit Sub
 
End If
 
'on teste la saisie du nom du chargé du dossier
 
If Me.cmbchargéPref = "" Then
MsgBox "Vous devez choisir votre nom de chargé du dossier parmi la liste proposée"
Me.cmbchargéPref.SetFocus
Exit Sub
End If
 
''on teste la saisie du nom du demandeur
If CmbDemandeurPref = "" Then
MsgBox "Vous devez indiquer le nom du demandeur"
Me.CmbDemandeurPref.SetFocus
Exit Sub
End If
 
 
'On teste la saisie de la nature de la demande
 
If Me.CmbNatureDemandePref = "" Then
MsgBox "Vous devez saisir la nature du versement"
Me.CmbNatureDemandePref.SetFocus
Exit Sub
 
End If
 
'On teste la saisie de la date de la demande
 
If Not IsDate(TxtJourDemandePref) Then MsgBox "Vous devez saisir une date de versement au format jj/mm/aaaa"
Me.TxtJourDemandePref.SetFocus
 
Exit Sub
 
'on teste la saisie d'un libellé de la demande
 
If TxtLibelléDemandePref = "" Then
MsgBox "Vous devez indiquer le libellé de la demande"
Me.TxtLibelléDemandePref.SetFocus
Exit Sub
End If
'on teste la saisie d'un libellé observation
 
If TxtObservationsPref = "" Then
MsgBox "Vous devez indiquer une observation ou mettre RSA"
Me.TxtObservationsPref.SetFocus
Exit Sub
End If
 
'on teste la nature de l'acte préfecture
If CmbNatureActePref = "" Then
MsgBox "Vous devez indiquer la nature de l'acte préfecture"
Me.CmbNatureActePref.SetFocus
Exit Sub
End If
 
'on teste l'origine du problème
If cmbOrigineProblèmePref = "" Then
MsgBox "Vous devez indiquer l'origine du problème"
Me.cmbOrigineProblèmePref.SetFocus
Exit Sub
End If
 
'on teste le nom de l'opération
If TxtNomOpérationPref = "" Then
MsgBox "vous devez saisir le nom de l'opération ou de l'affaire"
Me.TxtNomOpérationPref.SetFocus
Exit Sub
End If
 
'on teste la date du cachet de la préfecture
If TxtDateCachetPref = "" Then
MsgBox "vous devez saisir la date du cachet de la préfecture sous format jj/mm/aa"
Me.TxtDateCachetPref.SetFocus
Exit Sub
End If
 
'on teste la date de la note 1 de la préfecture
If TxtDateNote1Pref = "" Then
MsgBox ("vous devez indiquer la date de la note 1 de la préfecture")
Me.TxtDateNote1Pref.SetFocus
Exit Sub
End If
 
'on teste la date de réponse butoire de la note 1 de la préfecture
If TxtDateButoirRéponse1Pref = "" Then
MsgBox ("Vous devez renseigner la date butoire de la note 1 de la préfecture sous format jj/mm/aa")
Me.TxtDateButoirRéponse1Pref.SetFocus
Exit Sub
End If
 
 
Sheets("Préfecture").Select
 
Range("b1000").End(xlUp).Offset(1, 0).Value = TxtNomOpérationPref
Range("b1000").End(xlUp).Offset(0, 1).Value = CmbNatureDemandePref
Range("b1000").End(xlUp).Offset(0, 2).Value = TxtJourDemandePref
Range("b1000").End(xlUp).Offset(0, 29).Value = TxtObservationsPref
Range("b1000").End(xlUp).Offset(0, 20).Value = TxtLibelléDemandePref
Range("b1000").End(xlUp).Offset(0, 24).Value = CmbDemandeurPref
Range("b1000").End(xlUp).Offset(0, 22).Value = cmbchargéPref
Range("b1000").End(xlUp).Offset(0, 30).Value = TxtDateCachetPref
Range("b1000").End(xlUp).Offset(0, 4).Value = TxtDateNote1Pref
Range("b1000").End(xlUp).Offset(0, 5).Value = TxtDateButoirRéponse1Pref
Range("b1000").End(xlUp).Offset(0, 8).Value = TxtDateNote2Pref
Range("b1000").End(xlUp).Offset(0, 9).Value = TxtDateButoirRéponse2Pref
Range("b1000").End(xlUp).Offset(0, 11).Value = TxtDateNote3Pref
Range("b1000").End(xlUp).Offset(0, 12).Value = TxtDateButoirRéponse3Pref
Range("b1000").End(xlUp).Offset(0, 19).Value = cmbOrigineProblèmePref
 
 
CmbNatureDemandePref.Value = ""
TxtJourDemandePref.Value = ""
TxtObservationsPref.Value = ""
TxtLibelléDemandePref.Value = ""
CmbDemandeurPref.Value = ""
cmbchargéPref.Value = ""
CmbNatureDemandePref.Value = ""
CmbNatureActePref.Value = ""
cmbOrigineProblèmePref.Value = ""
TxtNomOpérationPref.Value = ""
TxtDateCachetPref.Value = ""
TxtDateNote1Pref.Value = ""
TxtDateButoirRéponse1Pref.Value = ""
TxtDateNote2Pref.Value = ""
TxtDateButoirRéponse2Pref.Value = ""
TxtDateNote3Pref.Value = ""
TxtDateButoirRéponse3Pref.Value = ""
Msg = "Voulez-vous arrêter vos saisies ?"
Style = vbYesNo
Title = "Quitter la fiche de saisie Pr"
réponse = MsgBox(Msg, Style, Title)
If réponse = vbYes Then
Unload Me
End If
If réponse = vbNo Then
End If
 
End Sub

Je vous remercie de votre précieux concours.