Problème de Configuration automatique des Itérations
Bonjour, je demande l'aide bienveillante d'un spécialiste pour m'aider à résoudre ce petit problème qui m'est posé en précisant ci- dessous le contexte d'utilisation avec ses bons et mauvais résultats et l'extrait de la macro concernée. En vous remerciant d'avance de ce qu'il faut modifier.
Fonctionnement de la macro :
1* Etat initial : Itcl=12 (configuration de max.itérations par une autre macro ou manuellement)
2* Texte placé en B8 : max.itérations à 200 par sub ItEcl ; c’est conforme
Durant l’incrémentation des itérations Itcl=200 …
3* …Texte retiré en B8 : max.itérations toujours à 200 ; Itcl toujours à 200 (C’est non conforme) alors que sub It0cl devrait configurer max.itérations à 10
Le seul moyen d’obtenir ce résultat (max.itérations à 10) est d’exécuter la macro par le triangle vert alors que la macro devrait tourner en boucle y compris durant l’incrémentation des itérations.
Comment obtenir cette reconfiguration de max.itérations à 10 ?
Extrait de la Macro concernée :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| Private Sub Worksheet_Calculate()
Dim Itcl As String
Itcl = Application.MaxIterations ‘Nbre maxi d’itérations actuelles configurées
If Range("B8").Value = "" And Itcl > 50 Then ‘Texte retiré dans Cellule B8 et maxi itérations configuré >50
It0cl ‘Configurer le maxi d’itérations à 10 (valeur 10 en BE1)
End If
If Range("B8").Value <> "" Then ‘Texte écrit dans Cellule B8
ItEcl ‘Configurer le maxi d’itérations à 200 (valeur 200 en BF1)
End If
End Sub
--------------------------------------------------------------------------------
Sub ItEcl()
With Application
Application.EnableEvents = False
.Iteration = True
.MaxIterations = Range("BF1").Value 'maxi d’itérations à 200 (valeur 200 en BF1)
Application.EnableEvents = True
End With
End Sub
---------------------------------------------------------------------------------
Sub It0cl()
With Application
Application.EnableEvents = False
.Iteration = True
.MaxIterations = Range("BE1").Value 'maxi d’itérations à 10 (valeur 10 en BE1)
Application.EnableEvents = True
End With
End Sub |