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 :

Pb d'affichage dans une zone liste [AC-2003]


Sujet :

Requêtes et SQL.

  1. #21
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    Il me demande d'entrer une valeur de parametre

    essaye de ma donner le message complet j'ai besoin de connaître le paramètre.

  2. #22
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    je n'ai pas trouvé access 2000, afin d'effectuer des tests sur le site.
    Désolé

  3. #23
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Ci-joint l'image sur un document Word

  4. #24
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    Veux-tu bien
    1° créer une requête appelée TST , peu importe son contenu.
    2° Remplacer Private Sub RefreshQuery() par le code suivant

    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
    32
    33
    34
    35
    36
    37
    Private Sub RefreshQuery()
     
        Dim SQL As String, strWhere As String
     
        SQL = " SELECT Num, OF, Gestionnaire, CodeArticle, QteOrdre, Cause, Dateappro FROM tblSauvegardeTraitementCauseRetard"
        ' voir si toutes les 3 cases sont cochées ---->on affiche tout
        If Me.chkGestionnaire + Me.chkOF + Me.chkCdeArticle = -3 Then GoTo terminerSQL
        'si non aménager la clause Where
     
        If Not Me.chkGestionnaire Then
        'attention, si le nom d'un gestionnaire contient un apostrophe, ( par ex Jean D'Hond )tu auras une erreur
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!Gestionnaire = '" & Me.cmbGestionnaire & "'"    ' le champ est du texte
        End If
        If Not Me.chkOF Then
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!OF = '" & Me.cmbOF & "'"       ' le champ est du texte
        End If
        If Not Me.chkCdeArticle Then
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!CodeArticle like ""*"" & " & Me.txtCdeArticle & " & ""*""" ' "   ' le champ est du texte
        End If
        'supprimer le 1er "and"
        strWhere = (Right(strWhere, Len(strWhere) - 4))
        ' ajouter WHERE devant
        strWhere = " WHERE " & strWhere
        SQL = SQL & strWhere
    terminerSQL:
        SQL = SQL & ";"
        Me.lstResultat.RowSource = SQL
        Me.lstResultat.Requery
        '---------------------
        Debug.Print SQL
        Dim q As QueryDef
     
        Set q = CurrentDb.QueryDefs("tst")
        q.SQL = SQL
     
     
    End Sub
    3° ouvre le formulaire
    4° coche la case "code article"
    5° le code par exemple "850"

    Cela va provoquer la modification de la requête TST.

    6° ouvre TST, tu devrais avoir le même message.
    7° ouvre TST en mode sql, copie le code et colle-le dans un post

  5. #25
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    je viens de trouver le problème.
    Dans la zone txtCdeArticle, il fallait que je mette " ".
    C'est en lisant ta dernière intervention, que je me suis apperçu de mon erreur.
    Désolé
    Je t'ai fait cherché pour rien.
    Je pense que cela va poser des pb par les utilisateurs.
    Afin de palier a ce souci, je vais enlever les entrequôtes.
    Qu'en penses-tu?

  6. #26
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    Je ne comprends pas ton message.

    par exemple, si tu veux afficher le code 1SBK140128R8500,

    il faut introduire dans le champ txtCdeArticle : 1SBK140128R8500
    ou par exemple 8500
    mais pas "1SBK140128R8500".

    Je constate que sur mon poste ça marche même si j'encadre avec les quotes inutiles.

    Et chez toi ?

  7. #27
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Pour reprendre ton exemple, il faut que je mette "R85" afin d'avoir tous les codes articles qui on R85.
    Si je met rien, aucun affichage

  8. #28
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    Essaie ceci

    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
    32
    Private Sub RefreshQuery()
     
        Dim SQL As String, strWhere As String
     
        SQL = " SELECT Num, OF, Gestionnaire, CodeArticle, QteOrdre, Cause, Dateappro FROM tblSauvegardeTraitementCauseRetard"
        ' voir si toutes les 3 cases sont cochées ---->on affiche tout
        If Me.chkGestionnaire + Me.chkOF + Me.chkCdeArticle = -3 Then GoTo terminerSQL
        'si non aménager la clause Where
     
        If Not Me.chkGestionnaire Then
        'attention, si le nom d'un gestionnaire contient un apostrophe, ( par ex Jean D'Hond )tu auras une erreur
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!Gestionnaire = '" & Me.cmbGestionnaire & "'"    ' le champ est du texte
        End If
        If Not Me.chkOF Then
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!OF = '" & Me.cmbOF & "'"       ' le champ est du texte
        End If
        If Not Me.chkCdeArticle Then
            strWhere = strWhere & " AND tblSauvegardeTraitementCauseRetard!CodeArticle like ""*" & Me.txtCdeArticle & "*"""
     
        End If
        'supprimer le 1er "and"
        strWhere = (Right(strWhere, Len(strWhere) - 4))
        ' ajouter WHERE devant
        strWhere = " WHERE " & strWhere
        SQL = SQL & strWhere
    terminerSQL:
        SQL = SQL & ";"
       Debug.Print SQL
        Me.lstResultat.RowSource = SQL
        Me.lstResultat.Requery
     
    End Sub

  9. #29
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Tu es un champion
    Je suis à la maison, je réponds à ton mail.

    Encore merci

  10. #30
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut
    N’exagérons rien, l’erreur était chez moi et je ne l’avais pas vue : lors des tests du code « article » j’introduisais, par hasard , uniquement des chiffres.
    Je confesse : un court instant, j’ai cru à un bug dans Access2003 !
    Je te reviens avec des propositions pour une version plus élaborée de ton formulaire.
    A+

  11. #31
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Points : 281 920
    Points
    281 920
    Par défaut Pour conclure
    Compare frmgestionnaire2 (ton idée originale : le résultat = une liste) et frmgestionnaire3 (le résultat = un sous-formulaire).
    Le travail de programmation est pratiquement le même mais
    Avantages de frmgestionnaire3
    chaque champ du résultat peut être copié dans le presse-papier
    Des événements peuvent être provoqués :
    - par exemple un double-click sur le un champ « gestionnaire » pourrait entraîner l’ouverture d’un formulaire donnant les coordonnées de ce gestionnaire voire l’envoi automatique d’un mail de demande d’explication complémentaire (je suppose que tu as Outlook)
    - click sur un code article --> affichage de sa description et pourquoi pas sa photo si le fichier existe ….

    Bref, bien plus de place pour ton imagination : the sky is the limit. C’est un autre débat.
    Je te propose de clôturer ici ce topic et si tu es d’accord, n’oublie pas le Flag Résolu.
    Amicalement.

  12. #32
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Un grand merci Claude, pour dévouement.
    Je regarde ce que tu m'as envoyé et je te tiens au courrant.
    Amicalement

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Problème d'affichage dans une zone de liste
    Par wood_phil dans le forum IHM
    Réponses: 1
    Dernier message: 26/09/2008, 00h25
  2. Affichage dans une zone de liste
    Par poolpe dans le forum VBA Access
    Réponses: 5
    Dernier message: 26/10/2007, 09h23
  3. Réponses: 12
    Dernier message: 28/07/2006, 10h22
  4. Sélection dans une zone liste deroulante
    Par biboulou dans le forum Access
    Réponses: 5
    Dernier message: 03/05/2006, 09h18
  5. Affichage dans une zone de texte.
    Par YLL dans le forum Access
    Réponses: 5
    Dernier message: 20/02/2006, 16h37

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