Bonjour à tous
J'ai essayé de créer un filtre vba qui permet d'afficher les valeurs non nulles d'une colonne (colonne 4 dans le fichier ci-joint).
Mon problème est que les valeurs de cette colonnes sont variables.
Voilà un petit code que j'ai créé mais ne marche pas lorsque la colonne4 reçoit de nouvelles valeurs.
Merci d'avance pour vos remarques et suggestions.
Code:
Sub Macro2()
Range("C5:F11").Select
Range("F5").Activate
Selection.AutoFilter
ActiveSheet.Range("$C$5:$F$11").AutoFilter Field:=4, Criteria1:=Array("2", _
"34", "99"), Operator:=xlFilterValues
End Sub
Pour le plaisir de croiser 00 () , pour le fun, pour pallier un désagrément possible de CurrentRegion
et aussi pour verser un peu dans le ... bizarre Le Palier
Code:
Sub a()
Dim dl&: dl = [F65536].End(xlUp).Row
Range("C5:F" & dl).AutoFilter 4, ">0", 1
End Sub
Le Bizarre
Code:
Sub b()
[C:F].Range("A5").AutoFilter 4, "<>0", 1
End Sub
J'avoue ne pas comprendre les subtilités à saisir... et ne pas saisir à quoi correspond le "1" de ">0", 1, dont le remplacement par un 2 donne un résultat correct
00
CurrentRegion peut poser des soucis car: CurrentRegion, propriété
Cette propriété renvoie un objet Range qui représente la zone en cours.
Celle-ci est une plage limitée par toute combinaison de lignes et de colonnes vides.
D'où la macro qui recherche la dernière ligne
Le reste c'est simplement une syntaxe simplifiée (dont j'abuse souvent un peu trop d'ailleurs)
Appelons cela ma coquetterie dans le code
PS: 1=xlAnd
Voir ci-dessous extrait aide VBA
Const xlAnd = 1
Membre de Excel.XlAutoFilterOperator
Bonjour à tous
je souhaiterais une modification de la macro (copy_filtre) qui me permettrai de regroupé le filtrage de toutes les pages
mais seulement pour certains colonnes _ (feuille snty2)
voir pièces jointes
Merci beaucoup