Une autre façon de résoudre
le problème est l’astuce utilisée par la formule utilisée aujourd’hui en C3 :
en ajoutant puis soustrayant une fonction volatile – telle que aujourdhui() ou
maintenant() – à somme_2(), on rend cette fonction volatile même quand la
commande Application.Volatile est désactivée.
Le concept de volatilité n’est pas simple à maîtriser… Dans notre exemple, quand on lance le recalcul des nombres aléatoires par [F9], la cellule C2 ne se recalcule pas. En revanche, si l’on modifie à la main la valeur de l’une quelconque des cinq cellules de A1 à A5, C2 se recalcule…
En fait, il y a même de
nombreux désaccords entre Microsoft et les experts d’Excel sur ce qui est ou
n’est pas volatile dans Excel.
Pire encore, la volatilité
d’une fonction peut très bien changer d’une version d’Excel à l’autre !!!
Et, plus étrange même, cette
volatilité peut aussi dépendre des arguments que vous avez utilisés…
Pour en savoir plus sur ce
sujet, je vous conseille vivement la lecture de la passionnante analyse publiée
à l’adresse suivante :
Dans cet article, l’auteur
spécifie clairement qu’il est préférable de ne pas avoir recours à
l’instruction Application.Volatile, car cela ralentit les calculs en forçant Excel
à effectuer des recalculs trop fréquents.
Aucun commentaire:
Enregistrer un commentaire