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

VBA Access Discussion :

Recherche d'un mot exact à l'intérieur d'un champ


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Apprendre
    Inscrit en
    Avril 2012
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Canada

    Informations professionnelles :
    Activité : Apprendre
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 147
    Par défaut Recherche d'un mot exact à l'intérieur d'un champ
    Bonjour,

    Est-ce qu'il existe une méthode pour faire un Dlookup à l'intérieur d'un champ qui me ramènerait seulement un résultat contenant le mot exact?

    Je cherche les combinaisons avec un LIKE, mais je n'y arrive pas...

    Exemple: Je cherche le mot fleur mais je ne souhaite pas avoir fleuriste comme résultat de recherche par exemple.

    Est-ce possible sans programmer une fonction spécifique?

    Merci de votre aide!

  2. #2
    Candidat au Club
    Homme Profil pro
    Ingénieur d'Exploitation
    Inscrit en
    Août 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur d'Exploitation
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2013
    Messages : 3
    Par défaut
    Et juste en mettant un truc comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "Blablabla where champ_recherche='fleur'"

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

    Essayes quelque chose de ce genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DLookup("LeChamp", "LaTable", "LeChamp LIKE '* fleur *'")
    Note qu'il y a un espace de part et d'autre du mot fleur.

    Par contre un DLookup ne te retournera qu'un seule résultat, si tu en attend plusieurs il faudra passer par un recordset pour parcourir tous les enregistrement, en utilisant le critère dans la clause Where qui alimente le recordset.

    Philippe

  4. #4
    Membre confirmé
    Homme Profil pro
    Apprendre
    Inscrit en
    Avril 2012
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Canada

    Informations professionnelles :
    Activité : Apprendre
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 147
    Par défaut
    Bonjour,

    Effectivement, le LIKE avec des espaces peut faire l'affaire, seulement, je dois couvrir le cas ou le mot est en début ou fin de champ, ce qui dans ce cas, aura soit un point à la fin ou pas d'espace au début. Également le cas ou le champ ne contient que ce mot.

    Je pourrais y aller avec un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DLookup("LeChamp", "LaTable", "LeChamp LIKE '* fleur *' or LIKE '*fleur *' or LIKE '* fleur.*'")
    Seulement, j'ai plusieurs cas à couvrir sur la ponctuation. Je me demande, est-ce que je pourrais créer une sorte de wildcard à la fin, qui contient les signes de ponctuations, peut-être du style:

    LIKE '* Fleur[!,?,.]*'

    Code fort probablement non-fonctionnel, mais j'aimerais condenser ma recherche

    Merci de votre aide

  5. #5
    Membre émérite

    Homme Profil pro
    Inscrit en
    Octobre 2009
    Messages
    789
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 789
    Par défaut
    Bonjour,

    Je n'ai malheureusement pas le temps de t'écrire un exemple, mais voici ce que tu pourrais faire :

    Plutôt que d'utiliser DLookUp, tu peux créer une fonction dans laquelle tu mets un Array avec tes différents caractères spéciaux.
    Tu boucles la dessus en ajoutant le mot que tu recherches et en sortie tu renvoies 0 ou 1 pour trouvé ou non trouvé.
    Tu peux aussi utiliser Instr pour rechercher ton mot dans ta phrase.
    Ce ne sont que quelques idées à creuser.

    Cordialement

    Christophe

Discussions similaires

  1. [RegEx] recherche de mot exacte
    Par misakilou dans le forum Langage
    Réponses: 8
    Dernier message: 14/08/2012, 17h45
  2. [XL-2010] Recherche mot exact à partir d'une textbox
    Par justin74 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/07/2011, 12h00
  3. Réponses: 1
    Dernier message: 18/07/2006, 20h09
  4. Recherche d'un mot avec LIKE sur plusieurs champs
    Par reynhart dans le forum Langage SQL
    Réponses: 16
    Dernier message: 26/11/2004, 17h41
  5. Phrase et mot exacte
    Par Tigris94 dans le forum Requêtes
    Réponses: 2
    Dernier message: 16/07/2004, 10h24

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