"Moteur de recherche" feuille excel

Fermé
Arnaud13011 Messages postés 18 Date d'inscription vendredi 24 mai 2013 Statut Membre Dernière intervention 25 février 2015 - 31 mai 2013 à 14:34
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 3 juin 2013 à 13:31
Bonjour,

Je gère une BD de produits alimentaires avec plusieurs fournisseurs et j'aimerai créer un "moteur de recherche" sur le première ligne qui filtrerait fur à mesure les lignes en fonction du mot saisi.


Merci de votre aide

A voir également:

7 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
3 juin 2013 à 11:14
Bonjour,

un exemple : https://www.cjoint.com/c/CFdloocCyY2

eric
2
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
3 juin 2013 à 13:31
Bonjour,

un exemple de code de Michel_m de CCM:

https://www.cjoint.com/c/CFdnEViUfqI

Bonne suite
1
Arnaud13011 Messages postés 18 Date d'inscription vendredi 24 mai 2013 Statut Membre Dernière intervention 25 février 2015
31 mai 2013 à 14:36
Le fichier en question

https://mon-partage.fr/f/aZMrGHeL/
0
Arnaud13011 Messages postés 18 Date d'inscription vendredi 24 mai 2013 Statut Membre Dernière intervention 25 février 2015
3 juin 2013 à 09:24
Help me please
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
3 juin 2013 à 09:42
Bonjour,

qui filtrerait fur à mesure les lignes en fonction du mot saisi. Ce mot serait celui de quelle colonne?????

Avec un filtre tout simple cela vous irait ?????
0
Arnaud13011 Messages postés 18 Date d'inscription vendredi 24 mai 2013 Statut Membre Dernière intervention 25 février 2015
3 juin 2013 à 09:47
Bonjour,

ça serait concernant la colonne C. Un simple filtre serait un peu contraignant sachant, il y aura plus de 500 lignes. J'ai vu sur certains forums et ça serait un peu mon besoin mais que sur la colonne C. Le problème est que je suis totalement novice en macro

https://openclassrooms.com/forum/sujet/excel-vba-moteur-de-recherche-filtrant
0
rEVOLV3r Messages postés 223 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 21 septembre 2022 28
3 juin 2013 à 13:16
Bonjour Arnaud13011,

J'étais moi aussi un novice en VBA il y a de ça 2 semaines, mais à force de recherche et de codage je commence à me débrouiller légèrement ;-)

Bref voici une macro qui sert à trouver le premier nom du fournisseur rechercher.

_____
Sub chercherFournisseur()

'Déclaration des variables
Dim strName As String

Sheets("Feuil1").Activate

'MSGBOX POUR DEMANDER LE FOURNISSEUR A RECHERCHER
strName = InputBox(Prompt:="Entrez le nom du fournisseur:", _
Title:="RECHERCHE D'UN FOURNISSEUR PAR NOM", Default:="nom")
If strName = "nom" Or _
strName = vbNullString Then
Exit Sub
Else
'RECHERCHE DU NOM DU FOURNISSEUR
Application.ScreenUpdating = False ' pour aller plus vite
Set ma_feuille = ThisWorkbook.Sheets("feuil1")
col_no = 1 ' pour la colonne A (A = 1)
lg_no = 1 ' 1 pour à partir de la première ligne
flag_trouve = False

Do While Not IsEmpty(ma_feuille.Cells(lg_no, col_no))
If (ma_feuille.Cells(lg_no, col_no).Value = strName) Then
ma_feuille.Rows(lg_no).Select
flag_trouve = True
Exit Do
End If
lg_no = lg_no + 1
Loop
If (flag_trouve = False) Then
MsgBox ("Nom du fournisseur " & strName & " non trouvé !")
End If
Application.ScreenUpdating = True ' Remet le comportement initial
End If
End Sub
_____

Malheureusement lorsque le nom du premier fournisseur est trouvé, la macro va sélectionner toute ta ligne de donnée ou son nom se trouve mais ne continue à chercher plus loin dans ta colonne les autres apparitions de ton fournisseur.

Ce que tu peux faire, c'est trier ton tableau avec les filtres avant d'utiliser la macro pour arriver à la bonne place. Ou utiliser un tableau croiser dynamique qui serait dans ton cas intéressant.

Ps : j'utilise des filtres sur plus de 100'000 lignes et...ca fonctionne très bien :-D
0