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 :

Recherche d'une chaine de caractères dans une table [AC-2007]


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Novembre 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2007
    Messages : 134
    Points : 106
    Points
    106
    Par défaut Recherche d'une chaine de caractères dans une table
    Bonsoir à tous,
    la requête ci-après me permet de me chercher tous les médias "commençant par...." et les afficher dans une liste.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Private Sub TxtRecherche_Change()
     Dim Requete As String
        Requete = "SELECT MediaID, TitreMedia, LibelleGenre, Rangement FROM T_Medias, T_Genres " _
             & "WHERE T_Medias.CodeGenre = T_Genres.GenreId AND TitreMedia Like '" & TxtRecherche.Text & "*';"
     
        If Len(TxtRecherche.Text) > 0 Then
            Me.LstRecherche.RowSource = Requete
        Else
            Me.LstRecherche.RowSource = ""
        End If
    End Sub
    Or, je veux une requête qui me permettra de trouver les titres de médias "contenant la chaine de caractères...."
    Eg. Quand je saisis "Harry", il m'affiche Harry potter
    Mais si je saisis "pott", il ne me renvoie aucun résultat.

    Merci d'avance pour votre aide

  2. #2
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Bonsoir.
    Il me semble que ceci devrait convenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim Requete As String
        Requete = "SELECT MediaID, TitreMedia, LibelleGenre, Rangement FROM T_Medias, T_Genres " _
             & "WHERE T_Medias.CodeGenre = T_Genres.GenreId AND TitreMedia Like '*" & TxtRecherche.Text & "*';"
    Cordialement.

  3. #3
    Membre régulier
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Novembre 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2007
    Messages : 134
    Points : 106
    Points
    106
    Par défaut
    Salut RobiPMS,
    Merci de la réponse, cela me convient parfaitement

  4. #4
    Membre régulier
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Novembre 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2007
    Messages : 134
    Points : 106
    Points
    106
    Par défaut
    je reviens sur ce sujet
    car j'ai un petit souci
    J'essaie d'améliorer mon formulaire de recherche
    2 nouveaux champs "TxtAuteur" et "LstAuteur"
    pour la recherche des auteurs de médias.

    voici le 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 TxtAuteur_Change()
     
        Dim req As String
     
            req = "SELECT AuteurID, (PrenomAuteur +'  '+ NomAuteur) AS Nom_Complet FROM T_Auteurs " _
                & "WHERE Nom_Complet LIKE '*" & TxtAuteur.Text & "*';"
     
     
        If Len(TxtAuteur.Text) > 0 Then
            Me.LstAuteur.RowSource = req
        Else
            Me.LstAuteur.RowSource = ""
        End If
     
     
    End Sub
    Dans le champ LstAuteur, il ne m'affiche rien
    Si je supprime la concaténation et remplace par le nom ou le prénom de l'auteur
    Il m'affiche le résultat attendu.
    Pourrait-on me dire d'où viendrait le souci?
    Merci d'avance

  5. #5
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    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
    Private Sub TxtAuteur_AfterUpdate()
    Me.Refresh
        Dim req As String
     
            req = "SELECT AuteurID, [PrenomAuteur] +' '+ [NomAuteur] AS Nom_Complet FROM T_Auteurs " _
            & "WHERE ([PrenomAuteur]+' '+[NomAuteur]) Like '*" & [TxtAuteur] & "*'"
     
         If Len(TxtAuteur.Text) > 0 Then
            Me.LstAuteur.RowSource = req
        Else
            Me.LstAuteur.RowSource = ""
        End If
    End Sub
    Je viens de faire un essai et cela fonctionne bien.
    Une actualisation est nécessaire après le changement du champ txtAuteur, et pour cela je préfère utiliser l'événement After Update plutôt que Change.
    Une autre façon de procéder est de faire simplement une actualisation de la liste après mise à jour du champ txtAuteur, et d'attribuer à la liste sa source lorsqu'elle reçoit le focus.
    Cordialement

  6. #6
    Membre régulier
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Novembre 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2007
    Messages : 134
    Points : 106
    Points
    106
    Par défaut
    Merci RobiPMS,
    Cela fonctionne comme je veux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/01/2008, 17h58
  2. Réponses: 1
    Dernier message: 06/05/2007, 17h42
  3. Réponses: 4
    Dernier message: 07/12/2006, 11h01
  4. [String]Recherche d'une chaine de caractères dans une autre
    Par Crazyblinkgirl dans le forum Langage
    Réponses: 3
    Dernier message: 29/07/2004, 11h51
  5. recherche d'une chaine de caractère dans une données text
    Par jdeheul dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 17/06/2004, 16h35

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