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

VBA Access Discussion :

Création d'une requette en VBA


Sujet :

VBA Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut Création d'une requette en VBA
    Bonjour,

    J'utilise ce code:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub CmdRefresh_Click()
        Dim FormFilter As String
     
    FormFilter = "SELECT DISTINCTROW CLIENTS.Ver_HD  FROM CLIENTS"
    FormFilter = FormFilter & " WHERE ((CLIENTS.Ver_HD) = """ & Me.AB_Ver_HD & """ ) "
     
     
    DoCmd.DeleteObject acQuery, "FiltrageDynamiqueReabonnement" 'supprime requete
    CurrentDb.CreateQueryDef "FiltrageDynamiqueReabonnement", FormFilter 'creer une requete
    DoCmd.OpenQuery "FiltrageDynamiqueReabonnement"
    End Sub
    me.AB_Ver_HD est un champ de mon formulaire, qui contient une valeur "oui" ou "non" (liste de cjoix, pas booléen)

    ça marche nickel !!! et je multiplie les parametres de ma requete !!

    Sauf que..
    certains de mes parametres SONT de type booléens...
    et là, la créationd e la requete ne se fait plus convenablement.

    En effet, il prend bien la valeur "vrai" ou "faux" de mon champ formulaire, il colle bien cette valeur dans les criteres, mais si j'observe ma requete, il le fait sous la forme [Vrai] ou [faux] et pas vrai ou faux tout simplement...
    ce qui fait qu'en executant, il demande la valeur de "vrai"...

    comment faire pour que la creation de la requete se fasse avec un parametre de verification booleen !!??

    En decorticant, je me rend compte que les """ & [mon champ] & """ font que je me retrouve avec "Faux" ou "Vrai", ce qui retourne une incompatibilité de type, pour un champ dont le critere ne peu etre du texte, mais uniquement vrai ou faux.. sans les ""...

    il y a un moyen de faire comprendre ça a la fonction qui créé la requete??

    M E R C I

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Points : 1 041
    Points
    1 041
    Par défaut
    bonjour,
    en mettant 0 pour Faux et -1 pour vrai devrait fonctionner.

    bonne journée

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut ooohhhh
    Une bonne idée qui m'avait echapée !!!
    ça me paraît rationnel...
    la motive revient!!!
    j'essaye...

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut zut
    non...
    ne marche pas...
    je lui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FormFilter = FormFilter & " WHERE ((CLIENTS.ImagineFinancement) = """ & -1 & """) "
    et il me met "-1" dans mes criteres de requete...
    ce qui ne marche pas...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut ooohhhh
    Bon, le 3em essai est le bon...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE ((CLIENTS.ImagineFinancement) = " & Me.AB_ImagineFinancement & ") "
    ça ça me rend bien QUE la valeur, sans y mettre des "" en trop dans ma requete...

    et mon champ rend bien la valeur 0 ou -1 comme il faut...
    donc en plus c'est dynamique !!!

    Je vais maintenant faire un champ oui non, qui en fonction de sa valeur mettra la valeur d'un autre champ a 0 ou -1


    MERCI

  6. #6
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Essaie avec True/False

    Edit : Pas rapide dans ma réponse
    [Access] Les bases du débogage => ici

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

Discussions similaires

  1. Création d'une Requette en VBA (2nd cas)
    Par Frenchguy dans le forum VBA Access
    Réponses: 1
    Dernier message: 26/06/2007, 16h24
  2. création d'une requette pour inscrire des données
    Par jeanjean555 dans le forum Access
    Réponses: 9
    Dernier message: 04/02/2007, 19h42
  3. Création d'une image en vba Access
    Par crashyear dans le forum VBA Access
    Réponses: 7
    Dernier message: 27/11/2006, 14h22
  4. Création d'une feuille en VBA
    Par baptbapt dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/07/2006, 14h23
  5. FAQ : problème avec création d'une requete en VBA
    Par Oluha dans le forum VBA Access
    Réponses: 14
    Dernier message: 14/02/2006, 12h05

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