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

Déclenchement de macro par changement du critère d'un filtre

5 réponses
Avatar
Yvan
Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.

5 réponses

Avatar
papou
Bonjour
Je pense que tu peux seulement savoir si tes données sont filtrées avec la
propriété FilterMode de la Feuille qui te renvoie vrai ou faux.
(à ne pas confondre avec Autofiltermode qui indique seulement que le filtre
automatique est actif)
Cordialement
Pascal


"Yvan" a écrit dans le message de news:

Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.


Avatar
Yvan
Bonjour Yvan.

Est-ce possible?

Sans problème. Moi, je fais comme çà:

(A placer dans la procédure "Worksheet_Change" de la feuille concernée)

Set rngCriteres = Range("Critères")
' A adapter
Set rngRecherche = Range("Zone_de_recherche")
' A adapter
If Target.Column < rngCriteres.Column Then Exit Sub
' A adapter
If Target.Column >= rngCriteres.Column + rngCriteres.Columns.Count Then Exit
Sub ' A adapter

rngRecherche.AdvancedFilter Action:=xlFilterInPlace,
CriteriaRange:=rngCriteres, Unique:úlse

Il y a peut-être plus élégant, mais çà, çà fonctionne.

OK?

@+

Yvan ( eh oui, moi aussi!)






"Yvan" a écrit dans le message de news:

Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.


Avatar
Yvan
Ok, mais peux-tu être plus explicite ???
Sur Excelabo, je trouve :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then MsgBox "c'est partii!"
End Sub

Mais cela ne fonctionne pas. Où cette procédure doit-elle être écrite pour
se déclencher automatiquement ???

--
Merci pour vos réponses.



Bonjour
Je pense que tu peux seulement savoir si tes données sont filtrées avec la
propriété FilterMode de la Feuille qui te renvoie vrai ou faux.
(à ne pas confondre avec Autofiltermode qui indique seulement que le filtre
automatique est actif)
Cordialement
Pascal


"Yvan" a écrit dans le message de news:

Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.







Avatar
papou
Re
Où cette procédure doit-elle être écrite pour
se déclencher automatiquement ???


Dans le code de la feuille en question :
Clic droit sur l'onglet, Visualiser le code
Tu places le code dans la page blanche à droite

Cordialement
Pascal

"Yvan" a écrit dans le message de news:

Ok, mais peux-tu être plus explicite ???
Sur Excelabo, je trouve :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then MsgBox "c'est partii!"
End Sub

Mais cela ne fonctionne pas. Où cette procédure doit-elle être écrite pour
se déclencher automatiquement ???

--
Merci pour vos réponses.



Bonjour
Je pense que tu peux seulement savoir si tes données sont filtrées avec
la
propriété FilterMode de la Feuille qui te renvoie vrai ou faux.
(à ne pas confondre avec Autofiltermode qui indique seulement que le
filtre
automatique est actif)
Cordialement
Pascal


"Yvan" a écrit dans le message de news:

Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le
critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.









Avatar
lSteph
Bonsoir,
(...a.m.h.a...) Cette macro affiche "c'est parti" si la sélection en cours
change pour la cellule A1
et non par modification du critère d'un filtre.

Cordialement.

LSteph
"Yvan" a écrit dans le message de news:

Ok, mais peux-tu être plus explicite ???
Sur Excelabo, je trouve :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then MsgBox "c'est partii!"
End Sub

Mais cela ne fonctionne pas. Où cette procédure doit-elle être écrite pour
se déclencher automatiquement ???

--
Merci pour vos réponses.



Bonjour
Je pense que tu peux seulement savoir si tes données sont filtrées avec
la
propriété FilterMode de la Feuille qui te renvoie vrai ou faux.
(à ne pas confondre avec Autofiltermode qui indique seulement que le
filtre
automatique est actif)
Cordialement
Pascal


"Yvan" a écrit dans le message de news:

Bonjour,

Je souhaite qu'une macro se déclenche si l'utilisateur modifie le
critère
d'un filtre.

Est-ce possible et comment ???

--
Merci pour vos réponses.