IIf (Date supérieure à une autre)

Fermé
ElvisRocks Messages postés 11 Date d'inscription mercredi 8 avril 2015 Statut Membre Dernière intervention 29 février 2016 - Modifié par ElvisRocks le 9/04/2015 à 12:33
 Tessel75 - 10 avril 2015 à 11:48
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

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
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
10 avril 2015 à 11:48
Bonne suite
0