Elaboration d'un filtre avancé sur une plage de données discontinue

chax

XLDnaute Nouveau
Bonjour à tous,

Je rencontre actuellement une difficulté avec excel : j'ai plusieurs tableau de données, ceux-ci ayant les même titre de colonnes. J'aimerai faire un filtre élaboré en sélectionnant ces deux tableaux mais qui sont discontinu.

Dans le critère plage, j'appui donc sur CTRL pour sélectionner ma 2ème plage (comme lorsque l'on fait un graphique) mais après avoir validé, le message "base de données ou plage de tableau non valide" apparait.

Y a t'il un moyen de résoudre ce problème (remarque : j'aimerai éviter le vba, ainsi que de changer la disposition de la feuille) .... j'espère avoir été clair, je mets un fichier joint pour plus de compréhension.

Merci d'avance de votre aide
 

Pièces jointes

  • Classeur1.xlsx
    9.5 KB · Affichages: 98
  • Classeur1.xlsx
    9.5 KB · Affichages: 116
  • Classeur1.xlsx
    9.5 KB · Affichages: 109

Staple1600

XLDnaute Barbatruc
Re : Elaboration d'un filtre avancé sur une plage de données discontinue

Bonjour chax (et Bienvenue)


Joindre un fichier *.xls plutôt qu'un *.xlsx permet de rendre ton fil accessible à plus de membres du forum*
(Et donc d'avoir plus de personnes susceptibles de t'aider)

*: Tout le monde n'est pas encore sous Excel 2007 ou 2010
 

chax

XLDnaute Nouveau
Re : Elaboration d'un filtre avancé sur une plage de données discontinue

Voici le fichier au format xls.

Merci d'avance
 

Pièces jointes

  • Classeur1.xls
    19.5 KB · Affichages: 97
  • Classeur1.xls
    19.5 KB · Affichages: 100
  • Classeur1.xls
    19.5 KB · Affichages: 125

Staple1600

XLDnaute Barbatruc
Re : Elaboration d'un filtre avancé sur une plage de données discontinue

Bonsoir

Ce n'est pas possible en une seule étape, car quand un filtre automatique ou élaboré est appliqué c'est la ligne entière qui est masquée.

Par contre si tu décomposes ainsi, cela le devient
1) Filtre élaboré sur le premier tableau
(choisir: copier vers un emplacement)

1) Filtre élaboré sur le second tableau
(choisir: copier vers un emplacement)


EDITION:
C'est plus simple et convivial de le faire par macro non ?
Essaies celle-ci et dis-moi ce que tu en penses
VB:
Sub MacroA()

'(tableau 1)
Range("A2:E8").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
        "$F$13:$F$14"), CopyToRange:=Range("A10"), Unique:=False

'(tableau 2)
Range("G2:K8").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
        "$F$13:$F$14"), CopyToRange:=Range("G10"), Unique:=False

'masquer tableau initial
Rows("1:9").EntireRow.Hidden = True

'Revenir à l'état d'origine
If MsgBox("Effacer le filtre?", vbYesNo, "RAZ") = vbYes Then
Rows("1:9").EntireRow.Hidden = False
[A10:E1000].Clear
[G10:K1000].Clear
End If
End Sub
 
Dernière édition:

chax

XLDnaute Nouveau
Re : Elaboration d'un filtre avancé sur une plage de données discontinue

Bonjour Staple,

Je te remercie beaucoup de m'avoir apporté une réponse mais je suis désolé, mes connaissances en VBA sont beaucoup trop faibles pour comprendre le code que tu me proposes ... je vais donc passer par plusieurs filtres élaborés ...
 

Staple1600

XLDnaute Barbatruc
Re : Elaboration d'un filtre avancé sur une plage de données discontinue

Bonsoir


Le code VBA que je propose n'est pourtant que la traduction en macro de solution que je te proposais de faire manuellement.
(Je l'ai obtenu en lançant l'enregistreur de macros puis j'ai ré agencé le code ainsi obtenu ;) )
 

Discussions similaires

Statistiques des forums

Discussions
311 733
Messages
2 082 019
Membres
101 872
dernier inscrit
Colin T