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 :

champs liste et affichage d'une requete SQL


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut [RESOLU]champs liste et affichage d'une requete SQL
    Bonjour, j'ai un formulaire dans lequel il y a :

    - un champ liste déroulante : cmbRechMOIS
    - un champs liste de texte : lstResults
    - un bouton : btn_search

    La liste déroulante récupére les valeurs d'une des colonnes (Mois_Application)de ma table(Opération), le bouton recherche lance la requete SQL qui doit permettre d'affiche dans la zone liste seulement les enregistrement qui possede la valeur choisi de la dite colonne.

    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
     
    Private Sub btn_search_Click()
     
    Dim strMois As String, strCriteria As String, strSql As String
     
    strMois = Me.cmbRechMOIS
     
    strCriteria = "Opération" & "." & "Mois_Application" & "" & "Like" & "" & strMois & ""
     
    strSql = "SELECT Opération" & ".*"
    strSql = strSql & "FROM Opération"
    strSql = strSql & "WHERE (" & strCriteria & ");"
     
    Me.lstResults.RowSource = strMois
    Me.lstResults.Requery
     
    End Sub
    Pour faire ce code j'ai utilisé un des tutos du site, j'ai pas d'erreur, mais rien ne s'affiche dans la zone liste...

    Quelqu'un peut il m'aider à comprendre mon erreur?

    merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 27
    Points : 23
    Points
    23
    Par défaut
    J'ai exactement le même type de problème: je pense contruire la bonne chaîne SQL avec le WHERE, etc (de toute façon même pour une chaine volontairement ultra simple ca marche pas), puis je l'affecte à Me.lstListe.RowSource, malgré cela ca reste tout blanc...

  3. #3
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    pour déboguer les requêtes écrites par du VBA, je te conseille de lire :
    http://cafeine.developpez.com/access...el/debugprint/

    Le tuto devrait t'aider à voir pourquoi ta chaine SQL est invalide.
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    ba le pire c'est que je n'est aucun bug... il ne se passe tout simplement rien...

    Et apres plusieur test, je peux dire que ca vien bien de la requete sql..... mais où... je cherche encore mais je trouve pas..

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

    As-tu suivi le conseil de Caféine et fait un Debug.print, regarde bien son tuto.

    Starec

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    Merci avec ca j'ai finalement trouver un code qui marche, le voilà :

    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
    Private Sub cmbRechMOIS_AfterUpdate()
     
    Dim strCriteria As String, strMois As String, strSql As String
     
    strMois = Me.cmbRechMOIS
    strCriteria = "(Opération.Mois_Application LIKE " & " " & strMois & " );"
     
    strSql = strSql & "SELECT Opération.*" & " "
    strSql = strSql & " FROM Opération"
    strSql = strSql & " WHERE " & strCriteria
     
    Me.lstResults.RowSource = strSql
    Me.lstResults.Requery
     
    End Sub
    Maintenant qu'il m'affiche bien la liste comme je veux, comment faire la somme des valeurs d'une des colonne? Faut faire une requete sur cette colonne? ou bien on peut directement faire une somme des colonne afficher?

    EDIT : j'ai essayé ca : (marche PAS..!!!)
    [CODE]strSomme = "SELECT Sum(Opération.Montant) FROM opération;"[CODE]

  7. #7
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    bon, j'ai fini par trouver, le code ete bon, l'erreur ete ailleur.

    Par contre j'ai dans ma table, une colonne dont les valeur sont du type "OUI/NON" (case à cocher), je veux faire des somme que lorsque que la valeur est "OUI" c'est à dire case coché... Le pb c'est que si je mais "OUI" comme filtre, ca marche pas et si je met "true" il me compte tout...

    Comme on ecrit "oui" de la case à cocher comme critere de séléction?

  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Points : 2 221
    Points
    2 221
    Par défaut
    bonjour,

    True correspond à la valeur numérique -1, False = 0

    cordialement,

    philippe

  9. #9
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    ok, mais qu'est ce que je dois utilisé comme critere de séléction pour qui me selectionne les enregistrement dont la case à été coché? Car dans ma table, je vois "Oui" ou "Non"... Mais si je fait un tri sur les valeur texte "Oui" ou "Non", ca marche pas...

  10. #10
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    Bon, j'ai trouvé, dans les propriété de la table, j'ai changé "Oui/Non" par valeur numérique, du coup je peut faire un tri sur les valeur 0 ou -1...

Discussions similaires

  1. [MySQL] Manque 1 champ dans l'affichage d'une requete sql
    Par poleta77 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 08/01/2010, 09h45
  2. JTable dynamique pour affichage d'une requete SQL
    Par boumacmilan dans le forum Composants
    Réponses: 1
    Dernier message: 09/06/2009, 15h01
  3. [SQL] affichage d'une requete SQL avec un echo (donnée unique)
    Par khamett dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/10/2007, 20h03
  4. [Tableaux] affichage d'une requete SQL sur 2 colonnes
    Par tondeuz dans le forum Langage
    Réponses: 5
    Dernier message: 01/06/2007, 15h47
  5. [SQL] Affichage d'une requete SQL
    Par djinko dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 22/10/2006, 12h58

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