IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Fonction IIf Access 2003 [AC-2003]


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Fonction IIf Access 2003
    Bonjour,

    J'ai un petit problème avec ma fonction IIf.
    Je m'explique. Je veux effectuer une requête ayant pour résultat de ne prendre en compte que certaines lignes de ma table. Par exemple les lignes ou le client est Apple.
    Ce client la est déterminé à partir d'une combobox faisant référence à une liste de clients.
    Jusque là ça va. Maintenant, ce que je veux, c'est que si la combobox est vide, ca n'effectue pas la requête (à terme, ca sera une requête multicritère).

    Donc voici mon IIf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf([Forms]![Reports menu]![Direct customer]=0,[Master Table]![Direct Customer],[Forms]![Reports menu]![Direct customer])
    [Forms]![Reports menu]![Direct customer] correspondant à ma combobox
    [Master Table]![Direct Customer] à la colonne de ma table qu'il faut trier.

    Quand je lance avec ma combobox à 0 tout se passe bien, il m'affiche tout le ptit monde mais si je lui mets Apple par exemple (qui est dans la liste), ca me donne ça :
    "This expression is typed incorrectly, or is too complex to be evaluated. For exemple, a numeric expression may contain too many complicated elements. Try simplifying the expression by assigning parts of the expression to variable"
    Je ne comprends pas d'où vient le problème. A moins que la commande IIf ne puisse faire référence qu'à des nombres et non une chaine de caractère ce qui signifierait qu'il faut que je refasse ma bdd.... Et oui, j'ai pas mis de autonumber dans la table customer.

    Voila, donc si quelqu'un a une idée ou un truc qui y ressemble, je suis preneur !

  2. #2
    Expert éminent sénior
    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    bjr,

    lorsque la liste est vide, elle est à Null

    à tester donc avec IsNull :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VraiFaux(EstNull([Forms]![Reports menu]![Direct customer].[value]);[Master Table].[Direct Customer];[Forms]![Reports menu]![Direct customer].[value])
    ou plus court avec Nz :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nz([Forms]![Reports menu]![Direct customer].[value];[Master Table].[Direct Customer])

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci de ton coup de main mais je viens de trouver un autre moyen qui marche (et qui correspond a ce que je voulais faire ensuite).

    En fait, j'ai créé une checkbox et mon IIf est devenu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IIf([Forms]![Reports menu]![AllDC]=False,[Forms]![Reports menu]![Direct customer],[Master Table]![Direct Customer])
    Et ca roule, car je voulais à la base créer une checkbox qui cacherait le combobox pour empêcher tout problème avec l'utilisateur (je comprends pas, j'avais rentré un client pourtant)

    Mais merci quand même!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appel fonction en access 2003
    Par Lucho63 dans le forum VBA Access
    Réponses: 7
    Dernier message: 23/02/2009, 11h48
  2. Fonction CpteDom access 2003
    Par saoshyant dans le forum Access
    Réponses: 5
    Dernier message: 19/09/2008, 16h45
  3. fonction IIF access
    Par raider14 dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 25/05/2007, 12h59
  4. Réponses: 1
    Dernier message: 08/06/2006, 13h01
  5. Réponses: 1
    Dernier message: 27/04/2006, 23h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo