Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Encore des problèmes de if :(

13 réponses
Avatar
nunurs
If Not IsNull(Me.txt_es)
Or Not IsNull(Me.txt_mois)
Or Not IsNull(Me.txt_annee)
Or Me.lbl_codir.Caption <> " " Then

Voilà un bout de code... txt_mois = null, txt_annee = null,
lbl_codir.Caption = " "
et pourtant ca passe dans le if :'(
Je ne vois pas pourquoi...je dois encore louper quelque chose de tout con...

10 réponses

1 2
Avatar
ze Titi
Bonjour nunurs

Tu ne nous dis pas clairement ce que tu veux tester mais dans ton cas,
je suggèrerais plutôt l'utilisation du And à la place du Or...

Dans ton message
If Not IsNull(Me.txt_es)
Or Not IsNull(Me.txt_mois)
Or Not IsNull(Me.txt_annee)
Or Me.lbl_codir.Caption <> " " Then

Voilà un bout de code... txt_mois = null, txt_annee = null,
lbl_codir.Caption = " "
et pourtant ca passe dans le if :'(
Je ne vois pas pourquoi...je dois encore louper quelque chose de tout con...


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Raymond [mvp]
Bonjour.

et txt_es a quelle valeur ? pour compléter le tout.
quand on mélange les conditions Or Not et Not il est préférable de placer
des paranthèses pour définir les priorités.
If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
il est préférable également d'utiliser Nz ce qui permet de tester deux
conditions simultanées au lieu d'une.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"nunurs" a écrit dans le message de news:

| If Not IsNull(Me.txt_es)
| Or Not IsNull(Me.txt_mois)
| Or Not IsNull(Me.txt_annee)
| Or Me.lbl_codir.Caption <> " " Then
|
| Voilà un bout de code... txt_mois = null, txt_annee = null,
| lbl_codir.Caption = " "
| et pourtant ca passe dans le if :'(
| Je ne vois pas pourquoi...je dois encore louper quelque chose de tout
con...
Avatar
nunurs
Hum je test si des contrôles sont utilisés ou pas ( 2 champs textes et un
label qui s'active avec des boutons radios)


Bonjour nunurs

Tu ne nous dis pas clairement ce que tu veux tester mais dans ton cas,
je suggèrerais plutôt l'utilisation du And à la place du Or...

Dans ton message
If Not IsNull(Me.txt_es)
Or Not IsNull(Me.txt_mois)
Or Not IsNull(Me.txt_annee)
Or Me.lbl_codir.Caption <> " " Then

Voilà un bout de code... txt_mois = null, txt_annee = null,
lbl_codir.Caption = " "
et pourtant ca passe dans le if :'(
Je ne vois pas pourquoi...je dois encore louper quelque chose de tout con...


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
nunurs
Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à null.

Bonjour.
et txt_es a quelle valeur ? pour compléter le tout.
quand on mélange les conditions Or Not et Not il est préférable de placer
des paranthèses pour définir les priorités.
If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
il est préférable également d'utiliser Nz ce qui permet de tester deux
conditions simultanées au lieu d'une.


Avatar
Raymond [mvp]
as-tu mis un point d'arret sur cette ligne et as-tu bien vérifié toutes les
valeurs ?
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"nunurs" a écrit dans le message de news:

| Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à
null.
|
| > Bonjour.
| > et txt_es a quelle valeur ? pour compléter le tout.
| > quand on mélange les conditions Or Not et Not il est préférable de
placer
| > des paranthèses pour définir les priorités.
| > If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
| > IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
| > il est préférable également d'utiliser Nz ce qui permet de tester deux
| > conditions simultanées au lieu d'une.
|
Avatar
ze Titi
Pas forcément Null, ça peut être une chaîne vide (donc "") et ça n'a
rien à voir avec Null.

En ce jour mémorable du lundi 21/05/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à null.

Bonjour.
et txt_es a quelle valeur ? pour compléter le tout.
quand on mélange les conditions Or Not et Not il est préférable de placer
des paranthèses pour définir les priorités.
If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
il est préférable également d'utiliser Nz ce qui permet de tester deux
conditions simultanées au lieu d'une.



--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info


Avatar
nunurs
Oui j'ai testé avec un point d'arrêt et tout est null ou vide ("").
A l'origine je testais des chaînes vides mais avec le point d'arrêt je me
suis rendu compte que c'était le null qu'il fallait tester.


Pas forcément Null, ça peut être une chaîne vide (donc "") et ça n'a
rien à voir avec Null.

En ce jour mémorable du lundi 21/05/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à null.

Bonjour.
et txt_es a quelle valeur ? pour compléter le tout.
quand on mélange les conditions Or Not et Not il est préférable de placer
des paranthèses pour définir les priorités.
If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
il est préférable également d'utiliser Nz ce qui permet de tester deux
conditions simultanées au lieu d'une.



--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info







Avatar
Raymond [mvp]
quel est le type de tes contrôles ? tous en texte ?
si tu testes contrôle par contrôle ça donne quoi ?

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"nunurs" a écrit dans le message de news:

| Oui j'ai testé avec un point d'arrêt et tout est null ou vide ("").
| A l'origine je testais des chaînes vides mais avec le point d'arrêt je me
| suis rendu compte que c'était le null qu'il fallait tester.
|
|
| > Pas forcément Null, ça peut être une chaîne vide (donc "") et ça n'a
| > rien à voir avec Null.
| >
| > En ce jour mémorable du lundi 21/05/2007, tu as entrepris la lourde
| > tâche de taper sur ton clavier :
| > > Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à
null.
| > >
| > >> Bonjour.
| > >> et txt_es a quelle valeur ? pour compléter le tout.
| > >> quand on mélange les conditions Or Not et Not il est préférable de
placer
| > >> des paranthèses pour définir les priorités.
| > >> If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
| > >> IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
| > >> il est préférable également d'utiliser Nz ce qui permet de tester
deux
| > >> conditions simultanées au lieu d'une.
| >
| > --
| > Cordialement,
| > Ze Titi
| >
| > Tout pour réussir avec Access :
| > http://www.mpfa.info
| >
| >
| >
Avatar
nunurs
Mes contrôles sont tous en texte.

J'ai testé ces deux lignes de code :
If IsNull(Me.txt_es) Then MsgBox huhu
If Me.txt_es = "" Then MsgBox ahah

Le premier passe lorsque je n'ai rien tapé dans la zone texte correspondante.



quel est le type de tes contrôles ? tous en texte ?
si tu testes contrôle par contrôle ça donne quoi ?

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"nunurs" a écrit dans le message de news:

| Oui j'ai testé avec un point d'arrêt et tout est null ou vide ("").
| A l'origine je testais des chaînes vides mais avec le point d'arrêt je me
| suis rendu compte que c'était le null qu'il fallait tester.
|
|
| > Pas forcément Null, ça peut être une chaîne vide (donc "") et ça n'a
| > rien à voir avec Null.
| >
| > En ce jour mémorable du lundi 21/05/2007, tu as entrepris la lourde
| > tâche de taper sur ton clavier :
| > > Dans mon formulaire je n'ai rien dans mes champs texte donc il sont à
null.
| > >
| > >> Bonjour.
| > >> et txt_es a quelle valeur ? pour compléter le tout.
| > >> quand on mélange les conditions Or Not et Not il est préférable de
placer
| > >> des paranthèses pour définir les priorités.
| > >> If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
| > >> IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
| > >> il est préférable également d'utiliser Nz ce qui permet de tester
deux
| > >> conditions simultanées au lieu d'une.
| >
| > --
| > Cordialement,
| > Ze Titi
| >
| > Tout pour réussir avec Access :
| > http://www.mpfa.info
| >
| >
| >





Avatar
Raymond [mvp]
et quelle est sa valeur ?
ce qui veut dire qu'il ne contient pas la valeur null. il te faut passer par
nz.

If Nz(Me.txt_es, "") <> "" _
Or Nz(Me.txt_mois, "") <> "" _
Or Nz(Me.txt_annee, "") <> "" _
Or Nz(Me.lbl_codir.Caption, "") <> "" Then


--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"nunurs" a écrit dans le message de news:

| Mes contrôles sont tous en texte.
|
| J'ai testé ces deux lignes de code :
| If IsNull(Me.txt_es) Then MsgBox huhu
| If Me.txt_es = "" Then MsgBox ahah
|
| Le premier passe lorsque je n'ai rien tapé dans la zone texte
correspondante.
|
|
|
| > quel est le type de tes contrôles ? tous en texte ?
| > si tu testes contrôle par contrôle ça donne quoi ?
| >
| > --
| > @+
| > Raymond Access MVP http://OfficeSystem.Access.free.fr/
| > Pour débuter sur le forum: http://www.mpfa.info/
| > Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
| >
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273
| >
| >
| > "nunurs" a écrit dans le message de
news:
| >
| > | Oui j'ai testé avec un point d'arrêt et tout est null ou vide ("").
| > | A l'origine je testais des chaînes vides mais avec le point d'arrêt je
me
| > | suis rendu compte que c'était le null qu'il fallait tester.
| > |
| > |
| > | > Pas forcément Null, ça peut être une chaîne vide (donc "") et ça n'a
| > | > rien à voir avec Null.
| > | >
| > | > En ce jour mémorable du lundi 21/05/2007, tu as entrepris la lourde
| > | > tâche de taper sur ton clavier :
| > | > > Dans mon formulaire je n'ai rien dans mes champs texte donc il
sont à
| > null.
| > | > >
| > | > >> Bonjour.
| > | > >> et txt_es a quelle valeur ? pour compléter le tout.
| > | > >> quand on mélange les conditions Or Not et Not il est préférable
de
| > placer
| > | > >> des paranthèses pour définir les priorités.
| > | > >> If (Not IsNull(Me.txt_es)) Or (Not IsNull(Me.txt_mois)) Or (Not
| > | > >> IsNull(Me.txt_annee)) Or (Me.lbl_codir.Caption <> " ") Then
| > | > >> il est préférable également d'utiliser Nz ce qui permet de tester
| > deux
| > | > >> conditions simultanées au lieu d'une.
| > | >
| > | > --
| > | > Cordialement,
| > | > Ze Titi
| > | >
| > | > Tout pour réussir avec Access :
| > | > http://www.mpfa.info
| > | >
| > | >
| > | >
| >
| >
| >
1 2