Bonjour,

J'ai récupéré un code qui valide une saisie de date dans un champ textbox, aucun problème il fonctionne parfaitement mais je ne comprends pas la signification du 2 devant l'instruction "Select Case".
Si je le supprime la routine ne fonctionne plus !
Quand je consulte l'aide sur cette instruction il n'est pas mentionné ce genre d'écriture.
Quelqu'un peut-il m'expliquer l'intérêt de ce '2' et surtout sa fonction ?

@+

Nono

Ci-dessous une partie de ce code:

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
 
Sub ValidationDate(TextBox As Object)
Dim Reponse As Variant
Dim LaDate As String
 
 
2 Select Case Len(TextBox.Value)
    Case 1
        If CLng(TextBox.Value) > 3 Then
            Reponse = MsgBox("Le jour ne peut pas commencer par " & TextBox.Value, vbOKOnly, "Erreur de saisie")
            TextBox.Value = ""
            Exit Sub
        End If
    Case 2
        If CLng(TextBox.Value) > 31 Then
            Reponse = MsgBox("Le mois ne peut avoir plus de 31 jours", vbOKOnly, "Erreur de saisie")
            TextBox.Value = Left(TextBox.Value, 1)
            Exit Sub
        Else
            TextBox.Value = TextBox.Value & "/"
        End If
    Case 4
        If Right(TextBox.Value, 1) > 1 Then
            Reponse = MsgBox("L'année ne peut avoir plus de 12 mois", vbOKOnly, "Erreur de saisie")
            TextBox.Value = Left(TextBox.Value, 3)
            Exit Sub
        End If
    Case 5
        If CLng(Right(TextBox.Value, 2)) > 12 Then
            Reponse = MsgBox("L'année ne peut avoir plus de 12 mois", vbOKOnly, "Erreur de saisie")
            TextBox.Value = Left(TextBox.Value, 4)
            Exit Sub
        Else
            TextBox.Value = TextBox.Value & "/"
        End If
    Case 8
    LaDate = Left(TextBox.Value, 6) & "20" & Right(TextBox.Value, 2)
    If Not IsDate(LaDate) Then
        Reponse = MsgBox("Le " & TextBox.Value & " n'existe pas ", vbOKOnly, "Erreur de saisie")
        TextBox.Value = ""
        Exit Sub
    End If
    If CDate(LaDate) < DateMini Then
        Reponse = MsgBox("La date doit être postérieure au " & DateMini, vbOKOnly, "Erreur de saisie")
        TextBox.Value = ""
        Exit Sub
    End If
    If CDate(LaDate) > DateMaxi Then
        Reponse = MsgBox("La date doit être antérieure au " & DateMaxi, vbOKOnly, "Erreur de saisie")
        TextBox.Value = ""
        Exit Sub
    End If
    Valide = True
End Select
End Sub