Bonjour,
Je reviens à vous car je n'arrive pas à me sortir d'une situation. Je ne sais pas si ce sera possible.
J'ai écrit un code qui permet de dire à l'utilisateur attention tel ou tel champs est vide. Je clique sur ok de ma message box , mais je peux quand même valider ma saisie alors que je n'ai pas rempli les champs.
Dois-je utiliser Enabled et le relier par un code ?
De plus dans ce code j'ai 3 optionbuttons, j'en coche un et ma message box m'avertie d'en sélectionner un. Est-ce parce qu'il y en a 3, il faudrait que les 3 soit cochés pour ne pas avoir un message ?
Un autre problème se pose aussi : si je relance mon programme à la suite (sans le fermer, pour le moment j'ai mis unload me donc cela ferme) le dernier optionbutton reste sélectionné. Par conséquent, je ne peux pas le valider pour avoir l'inscription de mes valeurs.
Existe-t-il une propriété ou solution ?
Voici le code de mon test si les champs sont vides :
Et celui de mon code Valider :
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 Sub TestSiVide() Dim VariTexte Dim Compt01 Dim optb VariTexte = "" Compt01 = 0 '--------------------------------------- If TextBox1.Text = "" Then VariTexte = VariTexte & Chr(10) & "Saisir la Date" If TextBox2.Text = "" Then VariTexte = VariTexte & Chr(10) & "Saisir le N° de Charge" If TextBox3.Text = "" Then VariTexte = VariTexte & Chr(10) & "Saisir le N° OF" If TextBox4.Text = "" Then VariTexte = VariTexte & Chr(10) & "Saisir le N° OP" If ListBox1.Text = "" Then VariTexte = VariTexte & Chr(10) & "Sélectionner le nombre de pièces" If ComboBox1.ListIndex = -1 Then VariTexte = VariTexte & Chr(10) & "Sélectionner votre Visa" '--------------------------------------- For Each optb In UserFormA.Controls If Left(optb.Name, 7) = "OptionB" Then If optb.Value = True Then Compt01 = 1 End If Next If Compt01 = 0 Then VariTexte = VariTexte & Chr(10) & "Choisir entre trempe, revenu ou autre" ' OptionButton '--------------------------------------- If VariTexte <> "" Then MsgBox VariTexte: Exit Sub If Compt01 = 0 Then MsgBox VariTexte: Exit Sub End Sub
Je vous remercie par avance de vos futures pistes.
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 Private Sub CommandButton1_Click() 'valider Dim DateChargement As String, NumeroDeCharge As String, NumeroDOp As String, NumeroOF As String, Nombredepieces As Variant, _ Visa As String '---------------------------------------------------------------------------------------------------- TestSiVide '---------------------------------------------------------------------------------------------------- 'Appelle de la méthode du module1 pour insérer les valeurs Call InsererLesDonneesDansLaFeuille(DateChargement, NumeroDeCharge, NumeroOF, NumeroDOp, ListBox1.Value, ComboBox1.Text) '---------------------------------------------------------------------------------------------------- Unload Me End Sub
Cordialement
Partager