Activation automatique de macro

nicola40

XLDnaute Junior
Bonjour,

j'utilise des tableaux croisés sous excel qui servent à analyser des performances industrielles.
Après calcul du tableau, j'effectue des calculs complémentaires, puis la mise en page au moyen d'une macro.
Lorsque je modifie l'un des critère dynamique, le tableau se recalcule et je souhaiterai exécuter ma macro en auto après la fin de ce calcul.

Pour l'instant, je n'ai rien trouvé de mieux que worksheet_activate, mais cela oblige à entrer/sortir de l'onglet.
J'ai tenté avec worksheet_change, mais alors là, la macro s'exécute en boucle ...


Merci d'avance
 

skoobi

XLDnaute Barbatruc
Re : Activation automatique de macro

Bonjour,

J'ai tenté avec worksheet_change, mais alors là, la macro s'exécute en boucle ...

C'est parce qu'après chaque modification d'une cellule, la macro se relance à nouveau.
Pour éviter celà, ajoute ces 2 lignes dans le code:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
[B]Application.EnableEvents = False[/B]
'ici ton code
[B]Application.EnableEvents = True[/B]
End Sub
 
Dernière édition:
D

Denis

Guest
Re : Activation automatique de macro

Bonjour le fil
peut être avec ceci
Private Sub Worksheet_Calculate()
ou mieux (dans thisworkbook)
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Bon courage et à+
Denis
 

nicola40

XLDnaute Junior
Re : Activation automatique de macro

Bonjour,



C'est parce qu'après chaque modification d'une cellule, la macro se relance à nouveau.
Pour éviter celà, ajoute ces 2 lignes dans le code:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
[B]Application.EnableEvents = False[/B]
'ici ton code
[B]Application.EnableEvents = True[/B]
End Sub


Mille merci SKOOBI, ça fonctionne impéc.

Merci à tout le forum pour les précieux conseils.

A plus
 

Discussions similaires

Statistiques des forums

Discussions
312 535
Messages
2 089 387
Membres
104 154
dernier inscrit
Patou