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

Macros "Calculate"

  • Initiateur de la discussion Initiateur de la discussion Nonno 94
  • Date de début Date de début

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 !

Nonno 94

XLDnaute Occasionnel
Bonjour à tous,

la fin de semaine approchant, je me prépare pour travailler sur un fichier et me pose la question suivante : est-il possible d'utiliser, dans une même feuille, 2 macros "calculate" lancées séparément lorsque 2 cellules différentes prennent une valeur déterminée ?
Si oui, quels noms leur donner ?

Private Sub Worksheet_Calculate_1 et Private Sub Worksheet_Calculate_2 ?

Plus précisément, la 1ère est lancée lorque la valeur de la cellule AX 1 est <> de 0 et la deuxième le serait lorsque sa valeur serait égale à 1.

Remerciements anticipés pour vos réponses pertinentes.
Cordialement.

Nonno 94.
 
Re : Macros "Calculate"

Bonjour,

Dans le module de code de la feuille:

VB:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
 If Range("AX1") = 1 Then
    Macro1
 Else
    If IsNumeric(Range("AX1")) Then Macro2
 End If
End Sub

Mais attention à ne pas entrainer des calculs en boucle en changeant AX1 dans les macros.

Suivant le cas spécifique il y a peut-être un autre moyen, il faut voir ce qui fait changer AX1 ou un membre de sa formule s'il contient une formule.

A+
 
Dernière modification par un modérateur:
Re : Macros "Calculate"

Bonjour Nono, bonjour le forum,

est-il possible d'utiliser, dans une même feuille, 2 macros "calculate" lancées séparément lorsque 2 cellules différentes prennent une valeur déterminée ?
Tu parles de 2 cellules différentes et après tu ne testes que la cellule AX1 ??? Alors on sait plus...
Peut-être comme ça :
Code:
Private Sub Worksheet_Calculate()
If Range("AX1").Value = 1 Then
    '... ton code
    Exit Sub
End If
If Range("AX1").Value <> 0 Then
    '... ton code
End If
End Sub
mais en tous cas il n'y as qu'un seul événement Calculate dans le même onglet.

[Édition]
Bonjour hasco on s'est croisé.
 
Re : Macros "Calculate"

Bonjour,
sans fichier exemple, difficile de t'aider..
Personnellement, je créerais 2 macro indépendantes et une Private Sub Worksheet_Calculate dans laquelle j’inclurais un select case ou un if...then...else pour appeler l'une ou l'autre macro en fonction du cas (AX 1 est = 0 ou AX 1 est <> de 0).
A+
Edit : mes salutations du matin à Hasco et Robert
 
- 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
6
Affichages
1 K
Réponses
4
Affichages
947
K
Réponses
2
Affichages
2 K
K
G
Réponses
3
Affichages
918
G
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…