Monsieur Excel
Pour tout savoir faire sur Excel !

22 août 2015

Lancement de dés (b)

Avec le modèle précédent, on obtient hélas 10 fois le même dé !

Si nous mettons le drapeau à 0 puis lançons le calcul avec [F9], nous rétablissons les valeurs initiales. Si nous remettons le drapeau à 1 et lançons la simulation avec [F9], nous obtenons encore dix fois le même dé, avec 1 chance sur 6 bien entendu que ce soit le même que dans la simulation précédente.

Nous jouons donc aux dés avec un dé pipé, puisque c’est toujours la même face qui sort dix fois de suite.

Pour comprendre et donc pouvoir résoudre le problème, il faut savoir comment Excel réalise ses calculs.

Excel opère en effet de manière très intelligente, en essayant – pour calculer vite – de ne faire que les calculs qu’il estime indispensables.

La formule de calcul du dé, en B4 est =si(drapeau=0;"";ent(6*alea()+1)).

Quand Excel calcule la seconde itération, il constate que le si() dépend du drapeau et raisonne de la façon suivante : « Le drapeau n’a pas changé depuis l’itération précédente, je n’ai donc pas besoin de recalculer le résultat ! ». Et il fait de même pour les 8 itérations restantes.

La solution est toute simple ! Pour forcer Excel à recalculer le dé, il suffit donc de faire dépendre le si() d’une cellule qui change à chaque itération…

La bonne formule de B4 est donc : =si(B3=0;"";ent(6*alea()+1)).
Voici le résultat que nous obtenons après avoir effectué cette modification.


C’est bien meilleur, n’est-ce pas !

Et pourtant, il reste encore deux problèmes. Le premier est que nous avons tantôt 9, tantôt 10 itérations au compteur. Le second est que la somme des pourcentages ne fait que très rarement 100% !

Nous verrons dans le prochain article la raison de ces problèmes et comment les résoudre.