Formulaire access
ludo
-
ludo -
ludo -
salut !
j'ai créé un formulaire à deux champs "nom, prénom" et un bouton de commande qui permet d'insérer les donnés dans la table à l'aide d'une commande sql. mais j'ai défini les paramétres de nom et prénom dans ma table comme non NULL donc dans mon bouton de commande j'ai insérer le script suivant :
if ( [forms]![enregistrement]![nom] = NUll) then
msgbox ("Vous devez entrer votre nom !")
else
if([forms]![enregistrement]![prenom] = Null) then
msgbox('vous devez entrer votre prénom")
else
DoCmd.RunSQL("INSERT INTO matable VALUES ([forms]![enregistreemnt]![nom],[forms]![enregistrement]![prenom]);")
DoCmd.Requery
end if
end if
enregistrement étant le nom de mon formulaire!
et en fait il ne tiens pas compte de mes conditions "if" et passe directement à l'insertion des donnés sachant que c impossible puisqu' ils doivent être non null comme je l'ai expliqué au début donc j'ai un message d'erreur " mauvaise utilisation de la fonction null" alors j'ai rempacé null par "" mais ça ne fonctionne pas!
pouvez vous me dire ce qui ne vas pas ?
à mon avis c le [forms]![enregistrement]![qqch] dans ce cas comment faire pour récupérer a valeur ?
merci d'avance
j'ai créé un formulaire à deux champs "nom, prénom" et un bouton de commande qui permet d'insérer les donnés dans la table à l'aide d'une commande sql. mais j'ai défini les paramétres de nom et prénom dans ma table comme non NULL donc dans mon bouton de commande j'ai insérer le script suivant :
if ( [forms]![enregistrement]![nom] = NUll) then
msgbox ("Vous devez entrer votre nom !")
else
if([forms]![enregistrement]![prenom] = Null) then
msgbox('vous devez entrer votre prénom")
else
DoCmd.RunSQL("INSERT INTO matable VALUES ([forms]![enregistreemnt]![nom],[forms]![enregistrement]![prenom]);")
DoCmd.Requery
end if
end if
enregistrement étant le nom de mon formulaire!
et en fait il ne tiens pas compte de mes conditions "if" et passe directement à l'insertion des donnés sachant que c impossible puisqu' ils doivent être non null comme je l'ai expliqué au début donc j'ai un message d'erreur " mauvaise utilisation de la fonction null" alors j'ai rempacé null par "" mais ça ne fonctionne pas!
pouvez vous me dire ce qui ne vas pas ?
à mon avis c le [forms]![enregistrement]![qqch] dans ce cas comment faire pour récupérer a valeur ?
merci d'avance
A voir également:
- Formulaire access
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Formulaire de contact le bon coin introuvable - Forum Réseaux sociaux
- Access runtime ✓ - Forum Access
1 réponse
Salut,
en fait c'est tout bête, mais pour tester le "null" il faut plutôt utiliser la fonction ISNULL :
If IsNull([forms]![enregistrement]![nom]) THEN...
Le test avec "" signifierait que le champ a une valeur à blanc, mais n'est pas null. En effet, il y a une différence entre "vide" et "null" :
Null : il n'y a jamais eu de valeur dedans, valeur indéterminée
"" : une valeur existe, elle est à blanc
Ca irait comme explications ? :-)
A+ Blux
en fait c'est tout bête, mais pour tester le "null" il faut plutôt utiliser la fonction ISNULL :
If IsNull([forms]![enregistrement]![nom]) THEN...
Le test avec "" signifierait que le champ a une valeur à blanc, mais n'est pas null. En effet, il y a une différence entre "vide" et "null" :
Null : il n'y a jamais eu de valeur dedans, valeur indéterminée
"" : une valeur existe, elle est à blanc
Ca irait comme explications ? :-)
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
cependant est ce normal que ma requte sql ne fonctionne plus il me met une erreur du genre "microsoft access a attribue la valeur null à 1 champ à la suite d'une erreur de conversion de type , bla bla bla ..
est ce que ça a un rapport ?
il faudrait que tu affiches le contenu de tes variables pour te faire une idée et voir si elles sont conformes à la structure de la table...
autre piste : ta table comprend-elle bien 2 colonnes et juste 2 ?
parce si tu essayes d'insérer une ligne de 2 colonnes dans une table qui comprend 3 ou 4 colonnes, il ne pourra pas inventer la valeur des colonnes manquantes et va sûrement essayer de les remplir avee du NULL...
A+ Blux
mais c bon en fait j'avais un conflit entre mes paramètre de type date.
merci beaucoup pour ton aide !