Bonjour,

J'ai un fichier de 3500 lignes, sur lequel j'ai créé une macro "Recherche" qui permet de chercher un mot sur 2 colonnes et de m'afficher le résultat. Jusqu'a là tout va bien.
Par contre dès que mes lignes sont filtrées, si je relance une nouvelle recherche, le filtre ne se fait plus sur les 3500 lignes mais sur environ 1900. Je ne comprend pas pourquoi ?

Pour le moment, pour contourner le problème, avant de lancer la recherche, je ré affiche toutes les lignes.

Voici ma fonction "Recherche" et "AfficheAll" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
Sub AfficherAll()
    On Error Resume Next
    ActiveSheet.ShowAllData
End Sub
 
Sub Recherche()
On Error Resume Next
 
AfficherAll
 
DerLig = Range("B" & Rows.Count).End(xlUp).Row
  Range("B11:C" & DerLig).AdvancedFilter _
         Action:=xlFilterInPlace, _
         CriteriaRange:=Range("B4:C6"), _
         Unique:=True
 
    If Application.Subtotal(3, Columns(2)) - 3 = 0 Then
        MsgBox "Aucun résultat pour le critère '" & Range("B3") & "'", vbInformation, "Aucun résultat"
        AfficherAll
    End If
End Sub
Cordialement