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

Lancer une macro

2 réponses
Avatar
Difoul56
Bonjour,

Je souhaite lancer une macro après avoir appliqué un filtre dans un tableau
Les
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
ne fonctionnent pas
Avez-vous une idéee ?
D'avance merci
JP

2 réponses

Avatar
MichDenis
Bonjour Difoul56,

Ça te tente de bidouiller ?

A ) Insère une feuille dans ton classeur
B ) dans cette nouvelle feuille, insère une formule
dans la cellule de ton choix du type :
=SOUS.TOTAL(3;Feuil1!A:A)
- dans la formule, le nom de la feuil1 doit être remplacé
par le nom de la feuille où tu exécutes ton filtre.
Tu peux utiliser un nom (insertion / nom / définir) pour
Feuil1!A:A
C ) Tu peux masquer cette feuille avec cette ligne de code
Worksheets("NomDelaFeuille").visible = xlveryhidden
de cette manière elle ne sera pas accessible par les usagers
de l'application.
D ) Dans le module feuille de cette nouvelle feuille
insère ceci :
'-------------------------------------
Private Sub Worksheet_Calculate()
Application.OnTime (Now + TimeValue("0:00:01")), "MaMacro"
End Sub
'-------------------------------------

"MaMacro" est le nom de ta macro que tu veux voir exécuter après
le filtre. Tu dois placer "MaMacro" dans un module standard. Selon
la grosseur de la plage à filtrer, tu peux faire varier 1 seconde
pour 2 ou 3 secondes afin de t'assurer que la macro sera lancée
après le filtre.

Évidemment, ton classeur doit être en mode de calcul automatique !





"Difoul56" a écrit dans le message de groupe de discussion :

Bonjour,

Je souhaite lancer une macro après avoir appliqué un filtre dans un tableau
Les
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
ne fonctionnent pas
Avez-vous une idéee ?
D'avance merci
JP
Avatar
Difoul56
L'idée est intéressante, je fais un essai
Merci



"MichDenis" a écrit dans le message de news:
%
Bonjour Difoul56,

Ça te tente de bidouiller ?

A ) Insère une feuille dans ton classeur
B ) dans cette nouvelle feuille, insère une formule
dans la cellule de ton choix du type :
=SOUS.TOTAL(3;Feuil1!A:A)
- dans la formule, le nom de la feuil1 doit être remplacé
par le nom de la feuille où tu exécutes ton filtre.
Tu peux utiliser un nom (insertion / nom / définir) pour
Feuil1!A:A
C ) Tu peux masquer cette feuille avec cette ligne de code
Worksheets("NomDelaFeuille").visible = xlveryhidden
de cette manière elle ne sera pas accessible par les usagers
de l'application.
D ) Dans le module feuille de cette nouvelle feuille
insère ceci :
'-------------------------------------
Private Sub Worksheet_Calculate()
Application.OnTime (Now + TimeValue("0:00:01")), "MaMacro"
End Sub
'-------------------------------------

"MaMacro" est le nom de ta macro que tu veux voir exécuter après
le filtre. Tu dois placer "MaMacro" dans un module standard. Selon
la grosseur de la plage à filtrer, tu peux faire varier 1 seconde
pour 2 ou 3 secondes afin de t'assurer que la macro sera lancée
après le filtre.

Évidemment, ton classeur doit être en mode de calcul automatique !





"Difoul56" a écrit dans le message de groupe de
discussion :

Bonjour,

Je souhaite lancer une macro après avoir appliqué un filtre dans un
tableau
Les
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
ne fonctionnent pas
Avez-vous une idéee ?
D'avance merci
JP