Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Selection.AutoFilter

9 réponses
Avatar
Crel
Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte une
feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre cela
me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick

9 réponses

Avatar
Papyty
Salut @ Tous,
Crel a écrit:
Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte une
feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre cela
me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


Une astuce que j'utilise
Je selectionne une cellule dans le tableau
ensuite un autofiltre sans critére
et autofiltre
Quelque soit l'état au dépard il sera désactivéà la fin

Sub Macro1()
Range("A1").Select
Selection.AutoFilter Field:=1
Selection.AutoFilter
End Sub

Si ça te convient aussi!!
--
@+
Thierry

Avatar
Papyty
Salut @ Tous, Crel a écrit:
Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte une
feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre cela
me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


Sinon une soluce de Isabelle
___________________________________________________________
bonjour Frédo,

Sub Macro1()
If Worksheets("Feuil1").AutoFilterMode Then
état = "actif" 'remplace cette ligne par Selection.AutoFilter pour
le désactiver
Else
état = "inatif"
End If
MsgBox "Le filtre automatique est " & état
End Sub
___________________________________________________________
--
@+
Thierry

Avatar
Michel Gaboly
Re,

Quand il n'y a aucun filtre automatique,
ActiveSheet.AutoFilter.Filters.Count renvoie une erreur 91,
probablement parce que l'objet AutoFilter n'existe pas dans
ces conditions.

Cela te permet de faire un test qui résoud ton problème

Je ne le savais pas il y a 10 minutes ;-)))


Sub M1()
Dim i As Integer ' Macro2 Macro
On Error Resume Next
i = ActiveSheet.AutoFilter.Filters.Count
MsgBox Err.Number
If Err.Number = 0 Then
Selection.AutoFilter
End If
On Error GoTo 0
End Sub



Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte une
feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre cela
me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
gee-dee-
Bonsoir michel,
;-)))
Sub test_si_filtre()
MsgBox IIf(ActiveSheet.AutoFilterMode, "Filtre actif !!!", "Pas de Filtre")
End Sub
@+
Avatar
Michel Gaboly
Bravo ;-)))




Bonsoir michel,
;-)))
Sub test_si_filtre()
MsgBox IIf(ActiveSheet.AutoFilterMode, "Filtre actif !!!", "Pas de Filtre")
End Sub
@+


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
Crel
Merci beaucoup
Papyty effectivement
Patrick


"Papyty" a écrit dans le message de news:
1gpgi1sm7esrc.c4f7gqh127s3$
Salut @ Tous, Crel a écrit:
Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte
une


feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre
cela


me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


Sinon une soluce de Isabelle
___________________________________________________________
bonjour Frédo,

Sub Macro1()
If Worksheets("Feuil1").AutoFilterMode Then
état = "actif" 'remplace cette ligne par Selection.AutoFilter pour
le désactiver
Else
état = "inatif"
End If
MsgBox "Le filtre automatique est " & état
End Sub
___________________________________________________________
--
@+
Thierry



Avatar
Crel
Merci beaucoup Michel
Patrick

"Michel Gaboly" a écrit dans le message de news:

Re,

Quand il n'y a aucun filtre automatique,
ActiveSheet.AutoFilter.Filters.Count renvoie une erreur 91,
probablement parce que l'objet AutoFilter n'existe pas dans
ces conditions.

Cela te permet de faire un test qui résoud ton problème

Je ne le savais pas il y a 10 minutes ;-)))


Sub M1()
Dim i As Integer ' Macro2 Macro
On Error Resume Next
i = ActiveSheet.AutoFilter.Filters.Count
MsgBox Err.Number
If Err.Number = 0 Then
Selection.AutoFilter
End If
On Error GoTo 0
End Sub



Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte
une


feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre
cela


me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


--
Cordialement,

Michel Gaboly
http://www.gaboly.com





Avatar
Crel
Merci beaucoup Gee-Dee
Patrick

"gee-dee-" a écrit dans le message de news:
uJhcn#
Bonsoir michel,
;-)))
Sub test_si_filtre()
MsgBox IIf(ActiveSheet.AutoFilterMode, "Filtre actif !!!", "Pas de
Filtre")

End Sub
@+




Avatar
Frédo P.
Bonsoir
le simple fait de la commande Selection.AutoFilter supprime les critères et
supprime le filtre quand il existe et le rétabli quand il n'existe plus.

--
Fred


"Crel" a écrit dans le message de news:
#
Merci beaucoup
Papyty effectivement
Patrick


"Papyty" a écrit dans le message de news:
1gpgi1sm7esrc.c4f7gqh127s3$
Salut @ Tous, Crel a écrit:
Bonjour à toutes et tous
Je souhaite créer une proc qui me supprime le filtre lorsque je quitte
une


feuille
Si je mets "Selection.AutoFilter", dans ma proc, en cas de non filtre
cela


me le mettra, donc comment avoir la syntaxe qui supprime le filtre.
Merci beaucoup
Patrick


Sinon une soluce de Isabelle
___________________________________________________________
bonjour Frédo,

Sub Macro1()
If Worksheets("Feuil1").AutoFilterMode Then
état = "actif" 'remplace cette ligne par Selection.AutoFilter pour
le désactiver
Else
état = "inatif"
End If
MsgBox "Le filtre automatique est " & état
End Sub
___________________________________________________________
--
@+
Thierry