Code vba génerateur de requête

Bonjour,

Je souhaite avoir un bout de code qui génère une requête à partir d'une table existante.
Est-ce que c'est possible?

Merci à vous

1 réponse

  1. Bonjour,
    Exemple à compléter
    Dim MaReq As QueryDef
    Dim TxtSql As String
    
    TxtSql = "SELECT * FROM matable WHERE ...."
    Set MaReq = CurrentDb().CreateQueryDef("LeNomDeMaRequete", TxtSql)

    1
    1. Merci Thorak!
      Je teste et reviens vers toi!
      0
    2. ça marche nickel faut juste enlever le WHERE .... et la requite se crée
      0
    3. Juste j'ai remarqué qu'on doit avoir une table et que son nom doit apparaitre dans le code. On peut pas le faire en utilisant une variable qui change de nom
      Parce que là à chaque generation de requite je dois changer le nom de la table
      0
    4. le WHERE dépend de la requête que vous voulez créer. (notez les 3 petits point après)
      Bien sur qu'on peut mettre une variable comme nom de requête. Mais peut être vaut-il mieux en avoir qu'une et qu'elle s'écrase à chaque fois sinon le nombre de requête risque d'augmenter considérablement.
      voici le code à mettre juste avant le set MaReq ...
        On Error Resume Next
      CurrentDb().QueryDefs.Delete "LeNomDeMaRequete"
      On Error GoTo 0

      au cas ou vous désirez n'avoir qu'une requête. (elle sera supprimer a chaque exécution avant la création)
      0
    5. Je crée une requite à la fois et je la garde en mémoire. et je definis son nom avec un inputbox.
      Je teste et je reviens vers vous
      0