VB - Tester les champs d'un form et emmetre un message

[Résolu]
Signaler
Messages postés
34
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
11 juin 2013
-
Messages postés
34
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
11 juin 2013
-
Bonjour,

J'ai un form employé avec plusieurs champs (Nom, Prénom, Fonction, Service, Tel, Fax et Ordinateur).

J'aimerai que quand un ou plusieurs sont vide avoir une textbox avec : "Les champs suivant sont non remplis: " et avoir la liste des champs non remplis.

Comment faire?

Merci

6 réponses

Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
10
Bonjour,

Commences par déterminer un endroit commun pour sortir de ta form. Un bouton "Valider" par exemple chargé de valider (si si) les données et saisies et de mettre à jour le recordset sous-jacent.

Dans ce cas-là, dans l'évènement "Click" de ce bouton, tu fais tous les contrôles et au fur et à mesure que tu trouves une erreur tu modifies le texte de la msgbox:

Ex:

Private sub button1_click
strMessage = ""
if textbox1.text "" then strmessage "Textbox1 doit être saisie"
if textbox2.text "" then strmessage strmessage & vbcrlf & "Textbox2 doit être saisie"

A toi de modifier le nom des contrôles.

En espérant avoir été assez clair.

Calade
Messages postés
1263
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2013
6
Je suppose que tes champs sont des Textbox

Un test avec If Nom.text = "" then MsgBox "Le champ Nom est vide": Exit sub devrait suffire
Répète ce test pour chaque champ avec le Exit Sub et ensuite continue ton traitement


La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain
Messages postés
1207
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
10
Bonjour,

La solution de Galain est très bien mais deviendra vite galère pour le end user s'il y a beaucoup de champs à saisir. Je pencherais plutôt à un contrôle global (clic sur un bouton "Valider" par ex ou unload de la form) avec affichage d'un seul msgbox dont le contenu sera créé au dernier moment en fonction des champs non ou mal saisis.

Enfin c'est mon avis.


Calade
Messages postés
34
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
11 juin 2013

merci a tout les deux

cdlt
Messages postés
34
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
11 juin 2013

Bonjour,

Par contre calade ta solution est celle que j'amerai mais comment faire ?

Merci
Messages postés
34
Date d'inscription
lundi 16 juin 2008
Statut
Membre
Dernière intervention
11 juin 2013

Bonjour,

EMrci Calade.