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

Microsoft 365 "Unvolatile" une fonction

ricoben

XLDnaute Nouveau
Bonjour,
On remarquera à l'ouverture du fichier qu'il y a un décompte "itération..." qui se met en place avant que je puisse avoir la main sur le fichier (il est vrai j'ai activé le calcul itératif dans mes options excel..)

Une fois que j'ai travaillé mon onglet "A", je voudrais basculer sur l'onglet "Moteur_bootstrap" et lancer des simulations basés sur des calculs de l'onglet "A".

Malheureusement, lorsque j'appelle la macro "simulation..." de cet onglet, l'onglet A est "recompilé en calcul" sans garantie de bon actualisation et générant des délais de simulation inopérant.
Je mets ca sur le compte de fonctions volatiles et d'évents "change" pour l'onglet "A". Mais je n'en suis pas sur. Est ce cela?
Peut on "désactiver" le caractère volatile de fonctions externes dans une macro de manière temporaire?
J'ai pensé à mettre à ces fonctions non pas en module mais rattaché à l'onglet "A", ca ne fonctionne plus comme avant.

Merci d'avance pour votre aide.
Eric
 

gbinforme

XLDnaute Impliqué
Bonjour,

Rajoutes en début de ta procédure
VB:
Application.Calculation = xlCalculationManual
puis tu reviens au calcul automatique en fin de procédure
Code:
Application.Calculation =xlCalculationAutomatic
cela devrait résoudre ton souci.
 

ricoben

XLDnaute Nouveau
Merci, mais comme la simulation bootstrap doit stocker des calculs , le fait d'enlever la "calculation", la macro va copier x fois la même valeur
 

eriiic

XLDnaute Barbatruc
Bonjour à tous,
tes fonctions volatiles le sont car voulu et vraiment nécessaire ?
Une fonction qui reçoit en paramètre tous ses antécédents n'a pas besoin d'être volatile.
Même si ce sont des colonnes entières, ça sera toujours mieux que volatile.

Idem pour le calcul itératif. Voulu et nécessaire ou c'est un palliatif ?
eric
 

Discussions similaires

Réponses
23
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…