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 :

modifier une requête en fonction de l'instruction SQL


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Points : 58
    Points
    58
    Par défaut modifier une requête en fonction de l'instruction SQL
    Bonjour,
    je souhaite changer ma requête vide nommé "qryChoixMultiple" en fonction d'une instruction SQL (différente selon les choix de l'utilisateur).
    Je ne suis pas expert, et donc à l'aide d'un bouquin "access et VBA 2000" j'ai écrit deux fonctions, l'une pour créer la requête et l'autre pour la modifier.

    1er fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Function CréerQueryDef(strSQL As String) As Boolean
    Dim qdf = CurrentDB.CreateQueryDef("qryChoixMultiple")
    qdf.SQL = strSQL
    qdf.Close
    RefreshDataWindow
    CréerQueryDef = True
    End Function
    2ème fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public Function ChangeQueryDef(strQuery As String, strSQL As String) As Boolean
    Dim qdf As QueryDef
    Set qdf = CurrentDB.QueryDefs(strQuery)
    qdf.SQL = strSQL
    qdf.Close
    RefreshDataWindow
    ChangeQueryDef = True
    End Function
    j'ai testé les deux fonctions dans la fenêtre déboguage et ca marche bien (vrai retourné)
    Dans mon formulaire (choix des critères) j'ai un bouton. Sur click j'ai écrit l'instruction SQL qui se construit en fonction des choix de l'utilisateur pour avoir au finale l'instruction appropriée contenu dans la variable strSQL. La difficultée pour moi est de transférer cette instruction dans ma requête "qryChoixMultiple" à l'aide de la fonction "ChangeQueryDef".
    J'ai don écrit à la suite de ma construction strSQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ChangeQueryDef("qryChoixMultiple", strSQL)
    apparement c'est pas la bonne synthaxe, ou peut etre n'est ce pas la bonne voie? un détail qui à peut être son imprtance, je travaille sur access 97...
    Merci à tous pour votre aide

  2. #2
    Membre régulier Avatar de samuelsiffert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    Bonjour,

    Voici le code d'un formulaire qui contient un bouton.
    La base contient 2 tables (table1 et table 2)
    Au chargement du formulaire la requête est créée.
    Au clic sur le bouton la requête est modifiée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Private Sub Commande0_Click()
     
       Call ChangeQueryDef("qryChoixMultiple", "select * from table2")
     
    End Sub
     
    Private Sub Form_Load()
     
        Call CréerQueryDef("select * from table1")
     
    End Sub
     
    Public Function CréerQueryDef(strSQL As String) As Boolean
        Dim qdf As QueryDef
     
        Set qdf = CurrentDb.CreateQueryDef("qryChoixMultiple")
        qdf.SQL = strSQL
        qdf.Close
        CréerQueryDef = True
     
    End Function
     
    Public Function ChangeQueryDef(strQuery As String, strSQL As String) As Boolean
     
        Dim qdf As QueryDef
        Set qdf = CurrentDb.QueryDefs(strQuery)
        qdf.SQL = strSQL
        qdf.Close
        ChangeQueryDef = True
     
    End Function
    @+

    Sam

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Points : 58
    Points
    58
    Par défaut
    merci sam pour ton coup de main, je vais tester tout ca, ca devrait se débloquer je pense...
    @+

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Points : 58
    Points
    58
    Par défaut
    ca marche impeccable, j'étais vraiment pas loin, je vais apprendre à pas me décourager!!! merci encore, bonne journée

  5. #5
    Membre régulier Avatar de samuelsiffert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    de rien, ça fait toujours plaisir de donner un coup de main !


    Merci de positionner votre discussion comme résolue si c'est le cas.

    @+

    Sam

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

Discussions similaires

  1. [vb]modifier une requéte
    Par adrix26 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 16/06/2006, 16h52
  2. Modifier une requête par des données différente
    Par leloup84 dans le forum Requêtes
    Réponses: 9
    Dernier message: 06/03/2006, 14h23
  3. Modifier une requête dans toutes ces tables...
    Par SnickeursMan dans le forum Requêtes
    Réponses: 6
    Dernier message: 14/12/2005, 13h08
  4. [débutant] modifier une page en fonction d'un menu
    Par Hastur dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/07/2005, 13h29
  5. Modifier une requête en fonction de boutons d'option
    Par JahRastafari dans le forum Access
    Réponses: 17
    Dernier message: 15/06/2005, 13h42

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