OVH Cloud OVH Cloud

double if

5 réponses
Avatar
Bauwens François
Bonjour,

Comment intégrer deux conditions en une, par.ex : si tel champ a tel valeur
et tel autre champ n'est pas vide alors ...
J'ai tenté if and if et ça ne fonctionne pas. Quelqu'un connaît-il la
synthaxe.
J'ai également tenté if...then
if... then
Je suppose que mettre les deux conditions l'une en desous de l'autre
devrait fonctionner mais il bloque sur mon second if (si tel champ n'est pas
vide)
j'ai tenté If Forms![nomform]![nomchamp].Value = est pas null Then
mais il ne veut rien entendre.

Merci pour votre aide
FRançois

5 réponses

Avatar
jc2nantes
avec AND... if champ1 = valeur AND champ2 <> null then...




"Bauwens François" a écrit dans le message de
news:
Bonjour,

Comment intégrer deux conditions en une, par.ex : si tel champ a tel
valeur
et tel autre champ n'est pas vide alors ...
J'ai tenté if and if et ça ne fonctionne pas. Quelqu'un connaît-il la
synthaxe.
J'ai également tenté if...then
if... then
Je suppose que mettre les deux conditions l'une en desous de l'autre
devrait fonctionner mais il bloque sur mon second if (si tel champ n'est
pas
vide)
j'ai tenté If Forms![nomform]![nomchamp].Value = est pas null Then
mais il ne veut rien entendre.

Merci pour votre aide
FRançois




Avatar
Gafish
Bauwens François wrote:
Bonjour,


Bonjour

Comment intégrer deux conditions en une, par.ex : si tel champ a tel
valeur et tel autre champ n'est pas vide alors ...


If Condition1 And Condition2 Then
....
End If


j'ai tenté If Forms![nomform]![nomchamp].Value = est pas null Then
mais il ne veut rien entendre.


Pour tester la non-nullité, essaie :
If Not IsNull([TonChamp]) Then ....

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Bauwens François
Merci à vous deux !
"Gafish" a écrit dans le message de
news:
Bauwens François wrote:
Bonjour,


Bonjour

Comment intégrer deux conditions en une, par.ex : si tel champ a tel
valeur et tel autre champ n'est pas vide alors ...


If Condition1 And Condition2 Then
....
End If


j'ai tenté If Forms![nomform]![nomchamp].Value = est pas null Then
mais il ne veut rien entendre.


Pour tester la non-nullité, essaie :
If Not IsNull([TonChamp]) Then ....

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr





Avatar
Bauwens François
Tout grand merci à tous les deux. j'ai corrigé et ça ne bogue plus mais il y
a un truc que je dois louper parce que ça ne fait pas ce que je veux, en
fait c'est comme si mon code n'avait pas d'effet. Avant que je n'ajoute les
"and" dans les "if" tout fonctionnait très bien... Est-ce que j'ai fait une
erreur de synthaxe ?

If Forms![associations]![Cadrecon].Value = 3 And Me![Année].Value <> Null
Then
[Référence].Value = Null
ElseIf Forms![associations]![Cadrecon].Value = 2 And Me![Année].Value <>
Null Then
[Référence].Value = "4.A.2"
ElseIf Forms![associations]![Cadrecon].Value = 1 And Me![Année].Value <>
Null Then
[Référence].Value = "5.B.2"
End If

Encore merci
Frans

"Gafish" a écrit dans le message de
news:
Bauwens François wrote:
Bonjour,


Bonjour

Comment intégrer deux conditions en une, par.ex : si tel champ a tel
valeur et tel autre champ n'est pas vide alors ...


If Condition1 And Condition2 Then
....
End If


j'ai tenté If Forms![nomform]![nomchamp].Value = est pas null Then
mais il ne veut rien entendre.


Pour tester la non-nullité, essaie :
If Not IsNull([TonChamp]) Then ....

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr





Avatar
Gilles MOUGNOZ
"Bauwens François" a écrit ...
Tout grand merci à tous les deux. j'ai corrigé et ça ne bogue plus mais il
y
a un truc que je dois louper parce que ça ne fait pas ce que je veux, en
fait c'est comme si mon code n'avait pas d'effet. Avant que je n'ajoute
les
"and" dans les "if" tout fonctionnait très bien... Est-ce que j'ai fait
une
erreur de synthaxe ?

If Forms![associations]![Cadrecon].Value = 3 And Me![Année].Value <> Null
Then
[Référence].Value = Null
ElseIf Forms![associations]![Cadrecon].Value = 2 And Me![Année].Value
<>
Null Then
[Référence].Value = "4.A.2"
ElseIf Forms![associations]![Cadrecon].Value = 1 And Me![Année].Value
<>
Null Then
[Référence].Value = "5.B.2"
End If

Encore merci
Frans


Bonjour, François

1°, si je ne me trompe, quand un test porte sur une valeur nulle, il renvoie
forcément Null. Il faut donc utiliser la fonction IsNull() préconisée par
Gafish. Dans ton cas, ' Me![Année].Value <> Null ' devient ' Not
IsNull(Me![Année].Value) '.

2°, le test sur la valeur nulle est répété dans chaque If, il serait plus
efficace de ne le faire qu'une seule fois.
If Not IsNull(Me![Année].Value) Then
...
End If

3°, pour ce qui reste, tu testes à chaque fois la même donnée. Dans ce cas,
regarde du côté de l'instruction 'Select Case...'.

Au final, cela pourrait donner ceci:
</CODE>
If Not IsNull(Me![Année].Value) Then
Select Case Forms![associations]![Cadrecon].Value ' La donnée que tu
veux tester
Case 3: ' Tu peux ajouter ici un commentaire sur la
signification de cette valeur...
[Référence].Value = Null ' ...et ici pourquoi tu efectues
tel traitement
Case 2: ' idem
[Référence].Value = "4.A.2" ' idem
Case 1: ' idem
[Référence].Value = "5.B.2" ' idem
Case Else: ' Pour toutes les autres valeurs...
' ...à toi de voir ce que tu veux faire (ou ne pas faire) !
End If
<CODE/>

En espérant avoir été utile.

Gilles