Champ obligatoire et saisie annulée si le champ est vide

hajaar -  
Hajaar92 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche une syntaxe qui me permet de rendre un champ obligatoire mais en ANNULANT l'ajout des données au cas où ces champs sont vides.
Le code que j'ai maintenant affiche un msg à l'utilisateur indiquant que le champ est obligatoire mais quand je retourne vers la feuille excel je trouve que les autres données saises ont été ajoutées !! :(


voilà la syntaxe dont je dispose maintenant

If TextBox1.Value = "" Then
s = MsgBox("Le champ : " & Label2 & " est obligatoire", vbCritical, "Erreur de saisie")
TextBox1.SetFocus
Exit Sub



A voir également:

1 réponse

m@rina Messages postés 23882 Date d'inscription   Statut Contributeur Dernière intervention   11 464
 
Bonjour,

Ta demande n'est pas très claire... d'où pas de réponse ! :s

Tu dis : "mais en ANNULANT l'ajout des données au cas où ces champs sont vides. "
"Ces champs"... tu parles de quoi ?
Et quel ajout des données ??
Tu veux que toutes les données du formulaire soient effacées si le champ obligatoire n'est pas rempli ?
Si c'est ça, il ne faut pas laisser l'utilisateur remplir d'autres champs tant que l'obligatoire n'est pas rempli...
Bref, essaie d'être plus clair.

m@rina
0
Hajaar92 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
En fait je ne veux pas empêcher l'utilisateur de continuer le remplissage des champs dans le formulaire mais empêcher la prise en compte des données entrées tant que les champs obligatoires ne sont pas tous remplis cad conserver ce que l'utilisateur a saisi et lui rappeler qu'il a oublié de remplir un ou plusieurs champs obligatoires
J'ai trouvé une petite solution si cela peut être utile par la suite,ça marche pour l'instant
voici la syntaxe

Private Sub CommandButton1_Click()
Dim L As Integer, i As Integer, j As Integer, M As Integer, k As Integer, a As Integer

T = Sheets("Feuil2").Range("B" & Rows.Count).End(xlUp).Row + 1
T = Sheets("Feuil2").Range("B" & Rows.Count).End(xlUp).Row + 1
If MsgBox("Etes vous sûr de vouloir ajouter ces informations?", vbYesNo, "Demande de confirmation") = vbYes Then
If (ComboBox1.ListIndex = -1 Or TextBox1.Text = " " Or TextBox3.Value = " " Or TextBox3.Value = " ") Then

MsgBox (" Les champs DATE, PROJET, volées planifiées et réalisées sont obligatoires")

Else
Feuil2.Range("A" & T).Value = TextBox1
Feuil2.Range("B" & T).Value = ComboBox1
Feuil2.Range("C" & T).Value = TextBox2
Feuil2.Range("D" & T).Value = TextBox3
Feuil2.Range("E" & T).Value = TextBox4

end if
end if

end sub


Merci :)
0