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 :

Requete condition dans excel


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 186
    Points : 61
    Points
    61
    Par défaut Requete condition dans excel
    Bonjour ,
    j´ai fait une requete access que j´aimerai exporte le resultat dans une table excel .La requete me donne une erreur du type "peu de parametre".
    Avec des requetes sans condition cela fontinonne bien.Mais avec une requete du type ou l´utilsateur doit donner par exemple un nom (ou numero) pour que la requete n´exporte qu´avec cette condition : l´erreur survient.
    Voici mon code
    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
     
     
     
    Dim db1 As DAO.Database
     
    Dim rst As DAO.Recordset
     
     
    Set db1 = DBEngine.OpenDatabase("mabase")
     Set rst = db1.OpenRecordset(Name:="requete_comdition",Type:=dbOpenSnapshot)
     
    With Worksheets("feuil1").Range("A2")
     
              Selection.ClearContents
     
              .CopyFromRecordset rst
         End With
    db1.Close
    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 768
    Points
    7 768
    Par défaut
    Bonjour,

    c'est normal avec des recordset.
    (Voir tuto DAO (requête paramètrée) et lien faq)


    Exemple d'application à ton à ton cas:
    Code vb : 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
    Dim db1 AS DAO.DATABASE
    Dim qdf  As DAO.QueryDef, rst AS DAO.Recordset
    Dim strParam1 As String
     
    strParam1 = InputBox("Entrer une valeur pour NomDuParamètre")
    If strParam1 = "" Then Exit Sub 
     
    SET db1 = DBEngine.OpenDatabase("mabase")
    SET qdf = db1.QueryDefs("requete_comdition")
    ' Pour un paramètre de type Texte
    qdf.Parameters("NomDuParamètre") = strParam1
    SET rst = qdf.OpenRecordset
     
    WITH Worksheets("feuil1").Range("A2")
     
              Selection.ClearContents
     
              .CopyFromRecordset rst
         End WITH
    db1.Close
    Si le paramètre n'est pas de type texte, il faudra si besoin, le convertir.
    Remplacer
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ' Pour un paramètre de type Texte
    qdf.Parameters("NomDuParamètre") = strParam1
    par le type de convertion adéquate.
    Exemple :
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ' Pour un paramètre de type Entier Long
    qdf.Parameters("NomDuParamètre") = CLng(strParam1)
    A+

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 186
    Points : 61
    Points
    61
    Par défaut
    Bonjour
    merci pour votre lien mais j´ai toujours un problem , il ne trouve pas la liste donne .Me donne une erreur a ce niveau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    qdf.Parameters("NomDuParamètre") = strParam1
    je ne sais pas d´ou vient le probleme .J´ai bien remplace ma base , la requete et aussi le nom du parametre.. mais toujours le meme problem

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Le nom de ton paramètre dans ta requête est bien "NomDuParamètre" ?

    Starec

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 186
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par Starec Voir le message
    Bonjour

    Le nom de ton paramètre dans ta requête est bien "NomDuParamètre" ?

    Starec
    Bonjour
    le nom de mon parametre dans ma requete est autre ( que j´ai remplace avant d´utiliser le code ).mais ce que je comprend pas:
    1- dans ma requete j´ai plusieur champs (4)
    2- je demande de m´afficher les Noms commencant pas "J", elle m´affiche cela sans probleme.
    Dans ce cas quel serait mon parametre a mettre dans mon code avec l´utilsation de ce "Querydefs" ? sachant que j´ai 4 colonnes(champs): Nom-Prenom -Numero_Age.
    merci

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Peux-tu nous mettre le SQL de ta requête, s'il te plait pour y voir plus clair.

    Starec

  7. #7
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 186
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par Starec Voir le message
    Bonjour

    Peux-tu nous mettre le SQL de ta requête, s'il te plait pour y voir plus clair.

    Starec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT tbl_nouveau.[Projet chef], tbl_nouveau.T_num, tbl_nouveau.[Nom Projekt]
    FROM tbl_nouveau
    WHERE (((tbl_nouveau.[Projekt Leiter]) Like "*"+[Donner Nom ]+"*") AND ((tbl_nouveau.Aktivieren)=Yes));
    voici le code

  8. #8
    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 768
    Points
    7 768
    Par défaut
    Bonjour,

    Ton paramètre est : [Donner Nom ]

    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    qdf.Parameters("Donner Nom ") = strParam1
    ou
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    qdf.Parameters("[Donner Nom ]") = strParam1
    J'ai essayé dans Excel en recréant dans une base ta table tbl_nouveau et ta requête requete_comdition.
    Ça fonctionne.

    A+

Discussions similaires

  1. Requete condition dans expression
    Par romain7534 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 19/11/2008, 20h07
  2. Affichage dynamique d'une requete Access dans Excel
    Par alex830001 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 18/06/2008, 16h54
  3. Requete Access dans Excel
    Par spud96 dans le forum Excel
    Réponses: 1
    Dernier message: 03/11/2007, 12h26
  4. Import Requete Access dans Excel
    Par shadockgreg dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 04/09/2006, 17h03
  5. Réponses: 4
    Dernier message: 23/01/2006, 18h49

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