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 :

VraiFaux dans une requête action


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier Avatar de Nounours1
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 439
    Points : 116
    Points
    116
    Par défaut VraiFaux dans une requête action
    Bonjour à tous,

    Combien de "VraiFaux" peut-on imbriquer dans une requête action ?, dans Excel ça doit être 6 ou 7.

    VraiFaux .........VraiFaux.......VraiFaux........etc

    Merci

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonsoir,

    regarde dans l'aide d'Access la fonction Switch (PremVrai en français).
    Elle remplace avantageusement des VraiFaux imbriqués.

    A+

  3. #3
    Membre régulier Avatar de Nounours1
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 439
    Points : 116
    Points
    116
    Par défaut
    Merci,

    Mais je ne trouve rien sur Switch ou PremVrai tu as une solution ?

    @+

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    C'est une fonction VBA.
    Elle se trouve dans
    Référence du langage Visual Basic
    --> Fonctions
    ----> Q-Z
    ------> Switch

    Aide en ligne d'Office : Switch

    A+

  5. #5
    Membre régulier Avatar de Nounours1
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 439
    Points : 116
    Points
    116
    Par défaut
    Merci,

    Donc, si j'ai bien compris
    1 je crée un module
    2 je colle par exemple ce code que je vais adapter:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function MatchUp (CityName As String)
        Matchup = Switch(CityName = "London", "English", _
                  CityName = "Rome", "Italian", _
                  CityName = "Paris", "French")
    End Function
    et ensuite sous le champ de ma requête de mise à jour par exemple comment je fais ?

    Merci.

  6. #6
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Non, pas besoin de créer un module.

    Tu utilises Switch (PremVrai) comme IIf (VraiVFaux) dans une requête.

    Les arguments de Switch vont toujours par paire : Expression (renvoyant Vrai ou Faux) et une valeur à renvoyer si l'expression est Vraie.
    A la première expression Vraie Switch s'arrête et renvoie la valeur associée.

    Un exemple de requête mise à jour.
    On suppose que le champ [NumJourSemaine] contient des valeur de 1 à 7 représentant les jours de la semaine.
    On veut mettre à jour le champ txtJourSemaine avec le nom du jour :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    UPDATE MaTable,
    SET txtJourSemaine = Switch([NumJourSemaine]=1,"Lundi",
    			    [NumJourSemaine]=2,"Mardi",
    			    [NumJourSemaine]=3,"Mercredi",
    			    [NumJourSemaine]=4,"Jeudi",
    			    [NumJourSemaine]=5,"Vendredi",
    			    [NumJourSemaine]=6,"Samedi",
    			    [NumJourSemaine]=7,"Dimanche",
    			    True, "Inconnu")
    Par exemple si NumJourSemaine vaut 4 et que je remplace les expressions par leur résultat booléen
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                         Switch(False,"Lundi",
    			    False,"Mardi",
    			    False,"Mercredi",
    			    True,"Jeudi",
    			    False,"Vendredi",
    			    False,"Samedi",
    			    False,"Dimanche",
    			    True, "Inconnu")
    revoie "Jeudi" car [NumJourSemaine]=4 est la première expression Vraie en partant de la gauche.

    Est-ce que tu penses que ça répond à ton besoin ?

    A+

  7. #7
    Membre régulier Avatar de Nounours1
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 439
    Points : 116
    Points
    116
    Par défaut
    Merci beaucoup,

    C'est parfait, c'est bien ce que je recherchais.

    @+

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

Discussions similaires

  1. Récupérer un paramètre de requête dans une class Action
    Par cherif ahmed dans le forum Struts 1
    Réponses: 0
    Dernier message: 08/02/2014, 16h57
  2. [AC-2003] vraiFaux dans une requête
    Par YannOss dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 21/03/2012, 11h17
  3. [AC-2000] Critère VraiFaux dans une requête
    Par piou591 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 14/11/2011, 12h48
  4. Simplifier la syntaxe "VraiFaux" dans une requête
    Par Fafma67 dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 13/01/2009, 17h29
  5. Vraifaux dans une requête
    Par mooh91 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 29/01/2007, 21h04

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