XL 2019 afficher uniquement les lignes où se trouve un mot recherché soit sur une colonne soit sur l'ensemble des colonnes

OCRMP

XLDnaute Nouveau
Bonjour,
j'ai trouvé ce petit fichier sur internet , qui filtre un tableau selon un mot .
je débute en VBA et je ne trouve pas la solution :
il y a un bug quand le mot n'est pas dans le tableau
"erreur 9 l'indice n'appartient pas à la sélection" , je ne trouve pas la solution 😔
ca bloque sur la ligne en rouge

Function Trouve(iVal As Integer, iTab() As Integer)
Dim i As Integer
For i = LBound(iTab) To UBound(iTab)
If iTab(i) = iVal Then
Trouve = True
Exit Function
End If
Next i
Trouve = False
End Function

merci pour votre aide
elfemp
 

Pièces jointes

  • filtrer sur un mot.xlsm
    28.4 KB · Affichages: 8

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @OCRMP et bienvenue sur XLD :),

Le code ci-dessous devrait suffire :
VB:
Private Sub bFiltrer_Click()
Dim plageVal As Range, ligne, Quoi
   Application.ScreenUpdating = False
   With Sheets("Feuil1")
      Set plageVal = Intersect(.Range("a1").CurrentRegion, Range("a1:k1").EntireColumn, .Rows(2).Resize(.Rows.Count - 1))
      plageVal.EntireRow.Hidden = False
      If tCherche = "" Then Exit Sub
      Quoi = "*" & tCherche & "*"
      For Each ligne In plageVal.Rows
         ligne.Hidden = (Application.WorksheetFunction.CountIf(ligne, Quoi) = 0)
      Next ligne
   End With
End Sub

Private Sub bShowAll_Click()
   Sheets("Feuil1").Rows.Hidden = False
End Sub

nota : pour tout afficher : cliquer sur le bouton "Tout afficher", ou laisser la zone de recherche vide, ou tapez un astérisque dans la zone de recherche.

remarque : je ne commente pas mes codes sauf si on me le demande 😉 .
 

Pièces jointes

  • OCRMP- filtrer sur un mot- v1.xlsm
    26.9 KB · Affichages: 6

Discussions similaires

Statistiques des forums

Discussions
312 178
Messages
2 085 982
Membres
103 079
dernier inscrit
sle