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

IHM Discussion :

Concevoir un formulaire de recherche


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Almeyric
    Inscrit en
    Octobre 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2014
    Messages : 53
    Points : 20
    Points
    20
    Par défaut Concevoir un formulaire de recherche
    Bonjour,

    J'ai mis en place ce tuto pour une recherche par texte sur quelques tables : Formulaire de recherche prêt à l'emploi.

    Tout va très bien, mais voilà que lors de sa mise en production, sur une des 3 tables, lors d'une recherche il ne m'affiche que les 3 premiers caractères, alors qu'en cours de développement, cela fonctionner très bien.

    Voici les deux résultats.
    Nom : rch_ok.png
Affichages : 227
Taille : 29,1 KoNom : rch_nok.png
Affichages : 154
Taille : 20,0 Ko

    J'ai agrandi la largeur des colonnes mais toujours pareil.

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Peux-tu être plus précis sur le problème et à partir de quel tuto tu travailles ( ou le code que tu utilises).
    Parce qu'avec tes copies d'écran, comme tu coches la case "Commence par", c'est normal si cela n'affiche que les premiers caractères.

    Cordialement.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Membre à l'essai
    Homme Profil pro
    Almeyric
    Inscrit en
    Octobre 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2014
    Messages : 53
    Points : 20
    Points
    20
    Par défaut
    Oups, désolé pour l'oublier du lien. Au niveau du code, j'ai été jusque : VII-A-2. Le code VBA du tuto. Je mettrai le reste ensuite. Une recherche sur le nom suffit pour le moment.

    Oui, j'ai coché la case Commencer par avec la valeur texte CA ou j'ai au moins une réponse dans chaque table. Même avec un autre début de nom, cela fait pareil.

    MErci

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Sans le code difficile de dire tout de suite ce qui ne va pas.
    Apprends à déboguer ton code en utilisant un Debug.Print.
    Fais un pour imprimer ce que tu as comme source de valeurs. Tu verras si tu as encore un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "... WHERE [Latable].[LeNom] LIKE 'CA*'"
    ou les nouveaux caractères.
    Cela t'orientera.

    Cordialement.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  5. #5
    Membre à l'essai
    Homme Profil pro
    Almeyric
    Inscrit en
    Octobre 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2014
    Messages : 53
    Points : 20
    Points
    20
    Par défaut
    Bonjour madefemere,

    En lisant ta réponse, je me suis rappelé que dans le tutoriel, il est bien expliqué de faire attention au nom des tables et champs. Et là, j'ai les deux cas, une table sans espace mais avec underscore, et les deux autres avec des espaces.

    Donc je fais un test dans l'après midi. Si c'est celà, j'effectuerai un test avec condition.

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    La correction du problème des espaces et autres caractères à éviter est dans la deuxième partie du tuto qui en compte 3.

    Celles avec espaces (comme le nom de champ) sont concernées, par contre s'il s'agit bien de _ (underscore) et non - (moins) le problème est ailleurs.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Membre à l'essai
    Homme Profil pro
    Almeyric
    Inscrit en
    Octobre 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2014
    Messages : 53
    Points : 20
    Points
    20
    Par défaut
    Bon je viens donc de regarder. Et j'ai le même résultat.

    Voici le code recherche qui vient du tuto. Il n'y a que les variables tables et champs qui peuvent avoir une incidence.

    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 cmd_recherche_Click()
     
        Dim strTable As String, strField As String, strCriteria As String, strSql As String
        Dim Criter As Variant
     
        'strTable = "[" & Me.cbo_table & "]"         ' recupère le nom de la table
        'strField = "[" & Me.cbo_champ & "]"         ' recupère le nom du champ
     
        strTable = Me.cbo_table         ' recupère le nom de la table
        strField = Me.cbo_champ         ' recupère le nom du champ
     
        ' compose le critere de recherche
     
               Select Case Me.opt_Recherche
                      Case 1 ' strictement egal
                           strCriteria = strTable & "." & strField & " Like """ & Me.txt_critere & """"
                      Case 2 ' commence par
                           strCriteria = strTable & "." & strField & " Like """ & Me.txt_critere & "*"""
                      Case 3 ' contient
                           strCriteria = strTable & "." & strField & " Like ""*" & Me.txt_critere & "*"""
                      Case 4 ' fini par
                           strCriteria = strTable & "." & strField & " Like ""*" & Me.txt_critere & """"
                      Case 5 ' ne contient pas
                           strCriteria = "NOT (" & strTable & "." & strField & " Like ""*" & Me.txt_critere & "*"")"
               End Select
     
     
        ' construit la requête sql
        strSql = "SELECT DISTINCTROW " & strTable & ".*"
        strSql = strSql & " FROM " & strTable
        strSql = strSql & " WHERE ((" & strCriteria & "));"
     
     
        Me.lst_resultat.RowSource = strSql  ' affecte sql a lst_Resultat
        Me.lst_resultat.Requery             ' recalcule la liste
     
    End Sub
    Le debug.rpint :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DISTINCTROW Archives_Accueillis_Simples.* FROM Archives_Accueillis_Simples WHERE ((Archives_Accueillis_Simples.Nom Like "cav*"));
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DISTINCTROW [Archives_Accueillis_Simples].* FROM [Archives_Accueillis_Simples] WHERE (([Archives_Accueillis_Simples].[Nom] Like "ca*"));

  8. #8
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    Tu veux dire qu'en mettant une recherche sur les noms commençant par "cav", tu as quand même tous les noms commençant par "ca" ?
    Parce que la capture d'écran dans ton premier message a l'air de donner le bon résultat !

    Les expressions SQL que tu donnes après le Debug.Print sont correctes a priori. Est-ce que si tu les "colles" dans le générateur de requêtes d'Access, tu as les bons résultats ?

    Cordialement.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  9. #9
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Je te conseille cette syntaxe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
       strTable = "[" & Me.cbo_table & "]"         ' recupère le nom de la table
       strField = "[" & Me.cbo_champ & "]"         ' recupère le nom du champ
    C'est la seule qui permet d'utiliser des tables avec espaces et autres caractères à éviter.

    La première copie d'écran représente le bon fonctionnement alors que la 2ème représente le mauvais (3 caractères de l'id et toutes les autres colonnes vides).
    C'est bien ça ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

Discussions similaires

  1. recherche des algorythmes pour images 2d
    Par exxos dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 24/05/2002, 13h46
  2. recherches des cours ou des explications sur les algorithmes
    Par Marcus2211 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 19/05/2002, 22h18
  3. Réponses: 8
    Dernier message: 17/05/2002, 09h08
  4. [PRO*C] Recherche information
    Par Anonymous dans le forum Interfaces de programmation
    Réponses: 2
    Dernier message: 04/04/2002, 17h53
  5. Recherche de documentation complète en algorithmes
    Par Anonymous dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 29/03/2002, 12h09

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