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 :

lancer une requete avec 2 parametres dans Access 2007 avec VBA


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut lancer une requete avec 2 parametres dans Access 2007 avec VBA
    Bonjour le forum,

    Je souhaite lancer une requete ayant 2 parametres via vba:
    un numero d'ordre et une date qui sont choisis par l'utilisateur dans 2 combo.

    Ensuite on lance la requete en cliquant sur un bouton de commande, et la requete devrait prendre comme parametres les valeurs selectionnees dans les combos.

    je sais que ce type de sujet est deja pas mal traite sur le forum, et je me suis inspire d'autres postes pour avancer. Malheureusement en grand debutant, je ne comprends pas grand chose et suis vite noye.

    J'arrive a lancer la requete avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Command8_Click()
    DoCmd.OpenQuery ("Query1")
    end sub
    Le souci c'est que deux boites de dialogues me demandent d'entrer les 2parametres alors que je souhaite que le code VBA les prenne directement dans les combo.

    Avec un peu plus de recherche sur le forum et la FAQ, j'ai obtenu:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim x
    Dim y
    Dim qdf
     
    x = Combo2
    y = Combo6
     
    CurrentDb.QueryDefs("Query1").Parameters("x") = x
    CurrentDb.QueryDefs("Query1").Parameters("y") = y
    CurrentDb.QueryDefs("Query1").Execute
    Mais la j'ai le message d'erreur suivant:
    cannot execute select query

    J'ai trouver dans d'autres fils qu'il fallait s'interesser a la methode recordset.
    J'ai regarder dans la FAQ et l'aide Access, mais la encore c'est du chinois pour moi.

    A quoi correspond-elle? A quoi sert-elle?
    qu'est-ce que qdf?
    Comment faire pour affecter les valeurs des combo aux parametres de la requete?

    Quelqu'un pourrait-il eclairer mes lanternes SVP ?

    d'avance merci.

    Bne journee

    Dimis

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour
    Si tu n'es pas très à l'aise avec le Vba, pourquoi ne te sers tu pas du Qbe. (créateur de requête access)
    Tu peux tout a fait y inclure en critère les résultats de tes combos.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Bonjour Gayot,

    merci pour ton message.

    justement, access ne me pose pas trop de probleme.... dans excel.

    Je commence tout juste avec access et n'y conaissant rien j'ai du mal a appeler les requetes via vba.

    Ce n'est d'ailleurs pas moi qui ai cree les requetes que j'essai tant bien que mal de manipuler... :$

    Le QBE, c'est l'interface dans laquelle on tape le SQL ?

    a +

    dimis

  4. #4
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Bonjour,

    Mais la j'ai le message d'erreur suivant:
    cannot execute select query
    Avec cette méthode, tu ne peux exécuter que des requêtes "Action" (MAJ, Suppression"...).

    Le QBE, c'est l'interface dans laquelle on tape le SQL ?
    Oui. Appelé aussi "Grille de création".

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Merci pour ta reponse Domi2,

    Y a t-il alors une methode permettant de lancer une requete de "selection" ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Dans la fenêtre de base de Données tu fais "Requêtes" "Nouveau" "Mode création" et tu suis l'assistant pour la sélection de ta table . Essaies comme cela dans un premier temps.

    Salut Domi2

  7. #7
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Hello Gayot !

    @dimis

    Tes paramètres, ils proviennent d'où ?

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  8. #8
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Re,

    Les 2 parametres sont les 2 items coisis dans les 2 combo qui sont dans un rapport.
    Les combos sont elle memes alimentees par une requetes. Elles affiches les donnees de 2 colonnes d'une table mais sans doublons.

    dimis

  9. #9
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Re,

    Si tu n'as qu'une colonne dans ta liste, il y'a une solution simple... mais pas du tout "propre".

    Autre solution, tu utilises une fonction comme critère sur le champ.

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

Discussions similaires

  1. Lancer une procédure en arrière plan dans access
    Par chetbo dans le forum VBA Access
    Réponses: 12
    Dernier message: 19/03/2020, 15h44
  2. Réponses: 5
    Dernier message: 25/01/2008, 11h15
  3. [AJAX] Impossible de lancer une requete avec firefox
    Par thomasse dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/10/2007, 11h21
  4. Impromptu : lancer une requete imr sur access
    Par kikie43 dans le forum Autres SGBD
    Réponses: 1
    Dernier message: 06/12/2006, 22h26
  5. [VBA-E]Ecrire et lancer une requete sur Access
    Par marie10 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/03/2006, 14h32

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