Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Filtrer sur la feuille 1 et que ce même filtre s'applique sur le feuil 2

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

desmonts

XLDnaute Occasionnel
Bonjour à tous,

Dans mon exemple j'ai 2 feuilles (essai 1 et essai 2), je voudrai que quand je filtre en D9 ou E9 sur une valeur (feuille essai & ou feuille essai 2), il applique le même filtre sur l'autre feuille. Quand je défiltre une feuille il dé filtre l'autre. c'est possible que via une macro ? si oui possible de la déclencher au changement de feuille ?
Par avance merci de votre aide. Je vous joins un petit fichier d'exemple.
 

Pièces jointes

Bonjour desmonts, vgendron, le forum

La solution présentée par vgendron est complète.

Cependant si une colonne contient des références uniques on peut s'en servir pour repérer les lignes filtrées.

On suppose ici qu'il s'agit de la colonne D alors utilisez cette macro dans ThisWorkbook :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim source As Worksheet, r As Range, a(), n&
Set source = Sheets(IIf(Sh.Index = 1, 2, 1))
For Each r In source.[A9].CurrentRegion.Columns(4).Cells 'traitement de la colonne D
    If Not r.Rows.Hidden Then
        ReDim Preserve a(n)
        a(n) = CStr(r)
        n = n + 1
    End If
Next
If Sh.FilterMode Then Sh.ShowAllData 'RAZ
Sh.[A9].CurrentRegion.AutoFilter 4, Criteria1:=a, Operator:=xlFilterValues
End Sub
A+
 

Pièces jointes

Bonjour le forum,

Même chose mais avec des tableaux structurés :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim source As Worksheet, r As Range, a(), n&
Set source = Sheets(IIf(Sh.Index = 1, 2, 1))
For Each r In source.ListObjects(1).Range.Columns(4).Cells 'tableau structuré, traitement de la colonne D
    If Not r.Rows.Hidden Then
        ReDim Preserve a(n)
        a(n) = CStr(r)
        n = n + 1
    End If
Next
With Sh.ListObjects(1).Range
    .AutoFilter
    .AutoFilter 4, Criteria1:=a, Operator:=xlFilterValues
End With
End Sub
A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…