Requête conditionnelle sous Access 2003

Bonjour,
Je souhaiterais créer une requête conditionnelle sous Access 2003.

Je dispose de :
Une table avec CA 2007, CA 2006, un taux de remise sur CA 2007, un taux de remise sur progression (CA 2007-CA 2006), le tout par client.
Une requête calculant la somme des CA par groupe de clients ([Somme De CA 2007] et [Somme De CA 2006])

Problème :
Je souhaiterais qu'il me calcule le montant de la remise par groupe de clients en tenant compte des conditions suivantes :
si [Somme De CA 2007]<[Somme De CA 2006], alors Remise=[Somme De CA 2007]*[Taux de remise sur CA 2007],
sinon Remise=[Somme De CA 2007]*[Taux de remise sur CA 2007]+([Somme De CA 2007]-[Somme De CA 2006])*[Taux de remise sur progression]

si [Taux de remise sur CA 2007] et[Taux de remise sur progression] sont nuls, afficher champ [Remise fixe]

Merci beaucoup,
Nicky
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  • Votes
  • Date
  • Date décroissante
  1. Re-bonjour,

    Merci beaucoup pour le tuyau. Je suis arrivée jusqu'à la moitié, mais je ne sais pas comment appliquer une condition simultanément à deux champs. (c'est ma première tentative d'utilisation du langage SQL)

    Dans mon exemple :

    Select ...
    iif([Remise_CA] "et" [Remise_Progression]=0,....

    Comment puis-je exprimer le "et" ?
    Je souhaiterais qu'il teste si les deux champs sont nuls pour le même enregistrement.

    Merci d'avance !

    Nicky
    1. Modérateur
      iif((toto = 0 and titi = 0),...,....)
      1. Merci beaucoup !

        Cela fonctionne à merveille.
    2. Une question s'il vous plaît :

      oki je suis sous access XP

      mais la fonction que l'on peut écrire VraiFaux, en anglais s'écrit IFF et je vois dans plusieurs exemple noter iif (vous comprendrais que cela me choque).
      Pourriez vous m'expliquer pourquoi vous avez raison ?

      (and on peut l'écrire et du reste)
      1. Modérateur
        Je ne connais pas la fonction iff, je connais seulement la fonction iif, mais elle ne s'écrit pas vrai/faux, c'est une fonction de test complexe et non de test binaire oui/non.
      2. @bluxtu oses accusé les gens de cons
        t'es fourré jusqu'au peids
        cloche
    3. Je ne suis pas un expert en sql mais ça doit être quelque chose comme
      iif ([ton champ]<10000 , "50" , [ton champ]*0.005) tous simplement
      1. bonsoir

        voila j un pti blem avec access 2007 et la fonction iif sur un formulaire contenant plusieurs champs calcules je veux que si la valeur d'un champs est inferieure a 10000 $, le valeur 50 doit s'afficher sinon c la valeur du mm champs multipliée par 0.005 qui doit apparaitre mé j y arrive po :s help plz merci pour votre aide