Monsieur Excel
Pour tout savoir faire sur Excel !

17 juillet 2017

Passagers d’un avion (b)

Un souci principal dans la création de ce modèle est que – pour faciliter le contrôle de ce qui s’y passe – les nombres aléatoires tirés à un moment donné demeurent et ne soient pas écrasés par un retirage ultérieur. J’ai donc, via la commande Outils Options, réglé Excel en mode Calcul manuel, Itératif avec 1 itération.

En A1, j’ai placé un compteur qui sera incrémenté de 1 à 15 pour calculer tour à tour la colonne C, puis les colonnes F à O. Cela me permet de m’assurer que les aléas calculés en colonne C grâce à la formule =si($A$1=1;alea();C2) en C2 ne soient pas recalculés quand ce compteur sera plus grand que 1.

Voici une copie d’écran avec un nouveau tirage du remplissage de l’avion :


En D2, la formule =rang(C2;C:C) calcule le rang du nombre aléatoire. Comme celle de C2, elle est reproduite vers le bas.

La formule de E3, reproduite elle aussi vers le bas, est : =si(estna(equiv(D3;E$1:E2;0));D3;"pbm"). Elle souligne qu’il y a un problème dès lors que le siègé réservé par le client est déjà occupé.

En E23, recopiée vers la droite une colonne sur 2, la formule =sierreur(equiv("pbm";E1:E21;0);"Fin") permet d’afficher « Fin » quand la simulation est terminée.

Enfin, en A23, la formule =si(index(21:21;equiv("Fin";23:23;0))=D21;"Gagné";
"Perdu") permet de savoir si l’on a gagné ou non.

Il ne vous reste plus qu’à imaginer quelles sont les formules en G2:H2 que nous allons pouvoir recopier vers le bas, puis par bloc de deux colonnes vers la droite, pour que tout fonctionne parfaitement. Je vous donnerai ma solution dans mon prochain article.