Filtre d'un tableau selon un mot defini

Bonjour à tous,

Je voulais tout d'abord vous remercier pour ce site très très pratique. Je l'ai découvert par hasard alors que je voulais créer une liste déroulante semi-automatique. Vos conseils m'ont permis d'améliorer la trame excel, sur laquelle nous travaillons, au-delà de mes espérances (j'ai rajouté une fonction recherche v pour récupérer les codes et fait une 2MFC qui nous permet de voir les erreurs et les doublons). Mon responsable à été bluffé et rien que pour ça je vous en remercie.

Par contre je cale sur un tableau. J'aimerais pouvoir taper un mot en B2 et mon tableau sélectionne toutes les lignes où mon mot se trouve, et j'aimerais que mon tableau n'affiche que ces lignes.

Je vous joins le fichier excel.

Je vous remercie d'avance et vous souhaite une agréable journée.

Edit

Re-bonjour,

Je vous remercie pour votre vive réponse Dan mais il ne se passe rien lorsque je tape le mot en B2. Peut-être j'éxécute mal le code ou dans la mauvaise fenêtre. Là je suis un peu perdue... Je suis une débutante mais déjà accro!!!

Je vous remercie de me donner plus de détails quant à la procédure.

flofol a écrit :

Re-bonjour,

Je vous remercie pour votre vive réponse Dan mais il ne se passe rien lorsque je tape le mot en B2. Peut-être j'éxécute mal le code ou dans la mauvaise fenêtre. Là je suis un peu perdue... Je suis une débutante mais déjà accro!!!

Je vous remercie de me donner plus de détails quant à la procédure.

de ce que j'ai pu tester suite à la réponse de DAN :

ouvrir ton fichier sur la feuil1

sur le nom de l'onglet (feuil1) faire un clic droit et choisir "visualiser le code" : ca ouvre une fenetre VBA.

coller le code suivant :

fermer cette fenetre VBA

dans ton fichier, en B2, changes le mot par un présent dans ton tableau.

à chaque fois que ce mot est trouvé dans la colonne B, la case en B et en C associée se colore de turquoise.

P.S. : apparemment cela ne tient pas compte de la syntaxe

@ Dan ton édit... a tout viré

gigi777 a écrit :
flofol a écrit :

Re-bonjour,

Je vous remercie pour votre vive réponse Dan mais il ne se passe rien lorsque je tape le mot en B2. Peut-être j'éxécute mal le code ou dans la mauvaise fenêtre. Là je suis un peu perdue... Je suis une débutante mais déjà accro!!!

Je vous remercie de me donner plus de détails quant à la procédure.

de ce que j'ai pu tester suite à la réponse de DAN :

ouvrir ton fichier sur la feuil1

sur le nom de l'onglet (feuil1) faire un clic droit et choisir "visualiser le code" : ca ouvre une fenetre VBA.

coller le code suivant :

fermer cette fenetre VBA

dans ton fichier, en B2, changes le mot par un présent dans ton tableau.

à chaque fois que ce mot est trouvé dans la colonne B, la case en B et en C associée se colore de turquoise.

P.S. : apparemment cela ne tient pas compte de la syntaxe

@ Dan ton édit... a tout viré

Je vous remercie de prendre du temps pour mon problème.

Je me suis mal exprimée je voudrais que mon tableau affiche seulement à l'ecran les lignes qui comprennent le mot sélectionné. Le reste doit être caché. Je ne sais pas si c'est possible mais depuis que j'ai découvert ce site je me rends compte qu'avec excel tout est possible alors je tente...

J'avais déjà utilisé la MFC avec la formule "cherche" pour colorer les cellules comprennant le mot séléctionné; d'ailleurs je n'arrive pas à colorer les cellules avec votre code si j'enlève ma MFC. Mais c'est pas grave car c'est pas ça que je souhaite...

Encore merci de m'aider

RE

Bon déso mais je me suis aperçu d'un souci, raison pour laquelle j'ai éditer le post

  • Cliquer droit sur l'onglet Feuil1
  • Choisir 'visualiser le code"
  • coller le code dans la fenetre
Private Sub Worksheet_Change(ByVal Target As Range)
'Macro Dan
Dim i as integer
If Not Intersect(Target, Range("B2")) Is Nothing Then
Application.ScreenUpdating = False
If FilterMode Then ShowAllData
Cells.EntireRow.Hidden = False
If IsEmpty(Target) Then Exit Sub
For i = 4 To Range("A" & Rows.Count).End(xlUp).Row
    With Range("a" & i & ":D" & i)
        If .Find(Target.Value, LookIn:=xlValues) Is Nothing Then Rows(i).Hidden = True
End With
Next
End If
Application.ScreenUpdating = True
End Sub

Reste à mettre quelque chose en B2

Si ok, cliquer sur le V vert à coté du bouton EDITER pour cloturer le fil lors de la réponse

Amicalement

Bonjour

Un peu tard mais un essai avec un filtre

Dan a écrit :

RE

Bon déso mais je me suis aperçu d'un souci, raison pour laquelle j'ai éditer le post

  • Cliquer droit sur l'onglet Feuil1
  • Choisir 'visualiser le code"
  • coller le code dans la fenetre
Private Sub Worksheet_Change(ByVal Target As Range)
'Macro Dan
Dim i as integer
If Not Intersect(Target, Range("B2")) Is Nothing Then
Application.ScreenUpdating = False
If FilterMode Then ShowAllData
Cells.EntireRow.Hidden = False
If IsEmpty(Target) Then Exit Sub
For i = 4 To Range("A" & Rows.Count).End(xlUp).Row
    With Range("a" & i & ":D" & i)
        If .Find(Target.Value, LookIn:=xlValues) Is Nothing Then Rows(i).Hidden = True
End With
Next
End If
Application.ScreenUpdating = True
End Sub

Reste à mettre quelque chose en B2

Si ok, cliquer sur le V vert à coté du bouton EDITER pour cloturer le fil lors de la réponse

Amicalement

Merci merci merci merci!!!!!!

Décidément vous êtes trop trop forts, de véritables magiciens d'excel!!!

Je suis grave impressionnée.... Pffuiiilala!!

Hi hi hi mais du coup je vais impressionner du monde aussi grâce à vous ici au taf!!!

Je me perfectionne déjà grâce à vos cours, qui sont tip top, là je m'attèle au cours VBA car je n'y connais rien.

Encore un énorme merci et à bientôt

Flora qui est très très contente

Rechercher des sujets similaires à "filtre tableau mot defini"