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

Détection filtre auto

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 !

criscris11

XLDnaute Accro
Bonsoir,
Existe t'il une instruction qui détecte l'événement filtre automatique ?
Le but serait de pouvoir masquer ou afficher une ligne si un filtre automatique est activé ?
Merci pour vos réponses.
 
Re : Détection filtre auto

Edit . MJ13 est passé en mm tps.
Salut MJ13 et criscris11 tu as ta solution.
cordialement




Salut CRISCRIS11,

Je suis assez mauvais en VB alors je fonctionne souvent par des macros enregistrées.

J'ai crée un macro dans laquelle sur une feuille j'active le filtre auto ( Selection.Autofilter puis le filtre sur la colonne 4 je fais une opération ...

Peut être que faire un test de type selection.Autofliter = true ou machin chose ?

en espérant avoir pu t'aider

Cordialement

VJOUG


Sub test()
'
' test Macro
' Macro enregistrée le 10/04/2009 par Vincent
'

'
Rows("1:1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=4, Criteria1:="n"
Range("F2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]+RC[-1]"
Range("F4").Select
Selection.AutoFilter Field:=4
End Sub
 
Re : Détection filtre auto

Bonsoir

pour le code, à essayer

If AutoFilterMode = True Then
Rows("1").Hidden = False
Rows("2").Hidden = True
Else
Rows("2").Hidden = False
Rows("1").Hidden = True
End If

après, la question est quand déclencher le code?
cela doit pouvoir se faire avec worksheet_calculate mais pour l'instant je ne vois pas comment piéger une sélection manuelle "données filtre..."

question subsidiaire, que veux tu faire avec tes lignes masquées ou démasquées?
 
Re : Détection filtre auto

Bonjour à tous, salut Eric,
Justement c'est bien là la question : quand déclencher le code ? Et bien si l'un des filtres auto est activé justement et c'est bien là le problème à résoudre.
Question subsidiaire, que veux tu faire avec tes lignes masquées ou démasquées ? Eh bien, les deux lignes font des calculs différents : la première compte les données saisies dans la colonne sans les vides ou les 0 mais si je filtre la formule en ligne 1 peut pas compter uniquement les lignes filtrées.
A moins que l'on puisse modifier la formule pour arriver au même résultat.
En espérant avoir été assez concis dans mes explications.
Bon week-end et bonne chasse aux oeufs 😉.
 
Re : Détection filtre auto

Re à tous,
J'ai fouiné un peu sur le net et j'ai vu qu'on pouvait imbriquer les formules SOMMEPROD et SOUS.TOTAL mais je n'arrive pas à les combiner pour ce que je souhaite avoir dans le fichier posté précédemment.
Alors si quelqu'un saurait faire, pas de souci je laisse tomber une version VBA.
Merci d'avance et bonnes Pâques.
 
Re : Détection filtre auto

bonjour
il faudrait mieux préciser ton besoin:

la formule ligne1 compte les lignes non vides et différentes de 0

en ligne 2 seulement les lignes non vides, non masquées

que veux-tu faire?

j'ai vu que tu as lancé un autre fil et que les idées fusent...
 
Dernière édition:
Re : Détection filtre auto

Bonjour Eric, le fil,
Oui effectivement, le nouveau fil que j'ai ouvert a porté ses fruits : j'ai la solution.
Merci pour ton aide mais je crois que la difficulté exposé dans ce fil était de capter l'activation d'un filtre automatique et je ne crois que cela soit réalisable.
C'est pas grave dans un certain sens puisque les formules de Monique ont frappées encore une fois.
Bon lundi de Pâques à toi.
 
Re : Détection filtre auto

Slt

sais pas si sujet résolu bref une chtite possibilité par gestion d'erreur :

Function AutoF() As Boolean
On Error GoTo VERR
AutoF = True
sheets(1).cells(1,1).AutoFilter Field:=1, Criteria1:="1"
Exit Function
VERR: AutoF = False
End Function


selon ce qu'ont veut faire on sait si AutoF est activé ou non ...

if AutoF then / if Not Autof then .....

@+ 😉

PS :
à toi de voir ou modifier cette ligne ci
sheets(1).cells(1,1).AutoFilter Field:=1, Criteria1:="1"

PS2:
maintenant ça marche plus ... bizarre j'ai dù toucher qu qu chose qu'il fallait pas ...😡
 
Dernière édition:
- 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

Réponses
1
Affichages
194
W
Réponses
4
Affichages
326
Réponses
8
Affichages
327
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…