Recherche par mots clé

alain18

XLDnaute Occasionnel
Bonjour,
Je souhaite mettre au point un système permettant la recherche dans par mots clé dans une base de donnée.
A l'aide d'un fichier (en PJ) trouvé sur le web, je pense pouvoir mettre en place ce que j'aurais besoin.
Toutefois je dois faire quelques adaptations dans la macro qui gère cette fonction et sans votre aide cela me sera impossible.
Mes questions concernant ce fichier sont les suivantes:
1 - comment modifier l'affichage du résultat de la recherche, à savoir: Ne faire ressortir que les colonnes A, B, C et D ou seulement que les colonnes A et B ?
2 - Comment corriger l'erreur de n° de ligne qui s'affiche dans la colonne F (il y a toujours une erreur d'1 ligne) ?
3 - parfois le contenu de la recherche reste affiché après fermeture de l'Userform. Comment ce contenu pourrait il être effacé ?
Quelques indications écrites (de votre part) directement dans la macro me permettraient de mieux en cerner le fonctionnement.
Je compte sur votre soutien car les quelques modifications que j'ai apporté (à ma façon...) n'ont pas vraiment été couronnées de succès :confused:
Merci de votre aide
 

Pièces jointes

  • FormRechercheMot3 - Copie.zip
    98.6 KB · Affichages: 76

Lolote83

XLDnaute Barbatruc
Re : Recherche par mots clé

Salut Alain18,
Sans utiliser de formulaire, saisir ce que tu souhaites rechercher en cellule J2 et cliquer sur le bouton TEST.
La macro te donne la liste de tous les sujets contenant ta recherche et celle-ci est même afficher en rouge
A adapter selon tes souhaits.
@+ Lolote83
 

Pièces jointes

  • Copie de ALAIN18 - Recherche par mot clé.xlsm
    329.9 KB · Affichages: 79
  • Copie de ALAIN18 - Recherche par mot clé.xlsm
    329.9 KB · Affichages: 83

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Merci Lolote83,
Super, la recherche qui s'affiche en couleur !
La saisie du/des mots clé dans un formulaire serait pas mal !
Puis en résultat de recherche le n° de la ligne de la BD serait un plus.
Merci.
 

Lolote83

XLDnaute Barbatruc
Re : Recherche par mots clé

Re salut,
Voir fichier joint en espérant que cela te convienne
@+ Lolote83
 

Pièces jointes

  • Copie de ALAIN18 - Recherche par mot clé.xlsm
    333.1 KB · Affichages: 88
  • Copie de ALAIN18 - Recherche par mot clé.xlsm
    333.1 KB · Affichages: 80

Robert

XLDnaute Barbatruc
Repose en paix
Re : Recherche par mots clé

Bonjour le fil, bonjour le forum,

En pièce jointe ton fichier modifié. Je n'ai pas eu le temps de commenter le code mais je te renverrai une v02 quand ça sera fait...
 

Pièces jointes

  • Alain_v01.xls
    765 KB · Affichages: 101
  • Alain_v01.xls
    765 KB · Affichages: 92

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Merci Robert et Lolote83,
Me voila maintenant avec 2 propositions intéressantes.
Pour Lolote83, cela me semble fonctionner correctement. Seul le n° de ligne ne figure pas - rien de bien grave.
Au 1er test rien ne fonctionnait, je n'avais seulement pas remarqué qu'il fallait faire 2 fois entrée dans le formulaire.

Pour Robert, la présentation est également satisfaisante, un seul petit bémol, si on sélectionne 5 colonnes il y a un bug. Il y a sans doute une solution à ce petit souci.
J'attends bien sûr les commentaires du code; ce qui permet parfois d'apporter quelques petites modifications simples sans être toujours à demander sur le forum que l'on nous fasse le travail.
Merci
A+
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Recherche par mots clé

Bonsoir le fil, bonsoir le forum,

En pièce jointe la version 2 avec le petit problème corrigé et le code commenté.
Au fur et à mesure que tu édites du texte dans la TextBox1, la ListBox1 affiche toutes les lignes contenant le texte dans les colonnes choisies initialement.
Deux solutions s'offrent alors à l'utilisateur :
• récupérer une ou plusieurs lignes de la ListBox1 en double-cliquant dessus une à une puis le bouton Sortir (ou la touche [Echap.]) pour fermer l'UserForm.
• récupérer toutes les lignes de la ListBox1 en cliquant sur le bouton Valider, l'UserForm se ferme tout seul...
 

Pièces jointes

  • Alain_v02.zip
    104 KB · Affichages: 77

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Hooo la la !!!
Super travail Robert, je suis époustouflé. Je te félicite et te remercie pour cette réponse très détaillée.
Alors je me suis empressé de testé pour essayer de trouver la faille.....! Rien dans le premier 1/4 d'heures, BRAVO !
Et puis, voila que je teste à nouveau et là.....un bug.
Après avoir hésité à t'en faire part, compte tenu du travail réalisé, je me dis: "il faut que je transmette l'info à Robert"
Voici ce que j'ai tapé dans le formulaire après avoir choisi 4 colonnes (d'ailleurs,ce nombre n'a pas d'importance) :
J'ai saisi: fru
C'est à la saisie du "u" que le bug arrive.
Encore merci pour le code VBA détaillé.
A très bientôt sans doute........sur ce petit "truc"
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Recherche par mots clé

Bonsoir le fil, bonsoir le forum,

Oui désolé. J'ai conservé, dans une ligne, la variable initiale NCA alors que je l'ai supprimée dans le reste du code...
Code:
If K = 2 Then ReDim Preserve TL(1 To NCA, 1 To 2)
qu'il faut remplacer par :
Code:
If K = 2 Then ReDim Preserve TL(1 To COL + 1, 1 To 2)
C'est fait dans la version 3...
 

Pièces jointes

  • Alain_v03.zip
    106.2 KB · Affichages: 87

Lolote83

XLDnaute Barbatruc
Re : Recherche par mots clé

Salut Alain18, Robert,
Pour Lolote83, cela me semble fonctionner correctement. Seul le n° de ligne ne figure pas - rien de bien grave.
Au 1er test rien ne fonctionnait, je n'avais seulement pas remarqué qu'il fallait faire 2 fois entrée dans le formulaire.
Dans mon dernier fichier joint, les lignes apparaissent en colonne F et pour ma part, je n'ai pas besoin de faire 2 fois entrée
La solution de Robert est aussi une belle réalisation
@+ Lolote83
 

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Bonjour le forum,
Bonjour Lolote83 et Robert,
Lolote83 tu as maitrisé parfaitement ce sujet.
Effectivement, il suffisait de cliquer directement sur "Fermer" pour avoir l'information qui s'affiche.
Après quelques tests, je remarque toutefois que le N° de ligne ne s'affiche pas en colonne 6. A voir....
Merci pour votre excellent travail.
 

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Re,
OK, excuse moi, mais sur mon fichier enregistré sur le PC j'avais certainement effacé l'ensemble des résultats obtenus après la recherche et donc effacé les formules de la colonne 6.
Toutefois après un nouveau test, quand plusieurs lignes sont concernées, seule le n° de la 1ère ligne est exact.
Encore un petit truc par là....
Merci.
 

Lolote83

XLDnaute Barbatruc
Re : Recherche par mots clé

Re salut,
OUPS, effectivement, une petite erreur de formule.
Sélectionner la cellule F2
=SIERREUR(EQUIV(E2;BD!E2:E100;0)+1;0)
et remplacer par
=SIERREUR(EQUIV(E2;BD!$E$2:$E$100;0)+1;0)
, puis tirer vers le bas.
Attention, je n'ai tiré cette formule uniquement sur les lignes 2 à 23. Si plus de résultats suite au filtre élaboré, penser alors à augmenter vers le bas cette formule.
J'avais oublié de bloquer avec les $ les données de la BDD
Tout devrait être OK maintenant ????
@+ Lolote83
 

alain18

XLDnaute Occasionnel
Re : Recherche par mots clé

Re,
Effectivement, tout est OK.
Merci à tous les deux pour votre excellent travail.
Je ne manquerai pas de revenir vers vous si des utilisateurs souhaitent une petite modification ou amélioration.
Merci au forum.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 192
Membres
102 809
dernier inscrit
Sandrine83