IIf (Date supérieure à une autre)

ElvisRocks Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
 Tessel75 -
Bonjour,

Je souhaite que selon la date en cours, apparaissent un critère vrai / faux.
Dans ma requête, j'ai un champ " Maintenant : Date() "
et un autre :

VraiFaux([Maintenant]>#2/2/2015#,Oui,Non)

Cela me donne "0" en résultat.
Quelqu'un sait-il pourquoi ça ne fonctionne pas ?
Mercii !

1 réponse

Teessel75
 
Bonjour,
La syntaxe de Iif"" est la même que "si()" en Excel. C'est à dire qu'il faut le lire : " Si A est vrai alors vaut A sinon vaut B"
Ta présentation n'est vraiment pas claire quant à ce que tu veux obtenir. En même temps, il faut faire attention parce que "Maintenant" existe en Access et est équivalent à "Now" qui vaut la date et l'heure exacte de la saisie. C'est donc une très mauvaise idée d'avoir un champ qui s'appelle ainsi.
Et aussi "Oui = -1" et "Non = 0"
Alors quand tu écris "VraiFaux([Maintenant]>#2/2/2015#,Oui,Non)"
C'est normal que tu obtiennes "0" en résultat.
Si tu veux qu'Access t'écrive "Oui" et "Non" en toutes lettres, il faut écrire avec des guillemets "Oui" et "Non"
Bonne suite
0
ElvisRocks
 
rebonjour,

En effet ça fonctionne beaucoup mieux avec les guillemets ! t j'ai suivi tes conseils à propos du "maintenant". En fait je cherche à calculer des charges en fonction de la date en cours. Si je suis en avril, je calcule de tant à tant, si je suis en mai, je calcule de tant à tant.
Je vais utiliser la fonction Mois() pour me simplifier la vie et écrire qqchose du style Iif ( Mois(Date()))>4, mon calcul, iif(( Moi (date()) etc etc

merci !
0
Tessel75 > ElvisRocks
 
Bonne suite
0