xellstorm
FR
Ouvrir l’app

Simulation de Monte-Carlo sur Excel, avec ou sans complément

Guide · Mis à jour en octobre 2026

Une simulation de Monte-Carlo sur un modèle Excel se fait de trois façons : avec des formules RAND() et une table de données, avec un complément, ou avec un outil qui exécute le modèle en dehors d’Excel. Dans les trois cas, le modèle est recalculé des milliers de fois, les entrées incertaines étant tirées dans des fourchettes, et les résultats se lisent comme des probabilités : la probabilité de dépasser le budget, le coût que l’on ne dépasse pas avec un niveau de confiance de 80 %, les entrées qui comptent le plus.

Pourquoi simuler plutôt que se contenter d’un seul nombre

Une feuille de calcul donne un seul résultat pour un seul jeu d’entrées. Quand les entrées sont des estimations, ce résultat cache l’écart possible, et il est souvent optimiste : additionner les coûts les plus probables oublie que les coûts dérapent plus facilement qu’ils ne se réduisent. Dans notre exemple de coût de projet, l’estimation de base, somme des coûts les plus probables, est dépassée dans 94,2 % des résultats simulés. Les cas optimiste, de référence et pessimiste n’y remédient pas : ils donnent trois résultats, sans dire avec quelle probabilité chacun se produit.

1. Excel seul, sans complément : RAND() et une table de données

Excel n’a pas de commande de simulation, mais ses fonctions suffisent pour un petit modèle :

  1. Remplacez chaque entrée incertaine par un tirage aléatoire. RAND() renvoie un nombre uniforme entre 0 et 1 ; une fonction de distribution inverse le transforme en une valeur de la fourchette voulue (formules ci-dessous).
  2. Répétez le calcul. Placez les numéros d’itération de 1 à 5 000 dans une colonne et, dans la colonne suivante, une ligne au-dessus du premier numéro, une référence à la cellule de sortie. Sélectionnez les deux colonnes à partir de cette ligne, choisissez Données › Analyse de scénarios › Table de données, et indiquez une cellule vide quelconque de la même feuille comme cellule d’entrée en colonne. Chaque ligne recalcule le modèle et reçoit donc de nouveaux tirages aléatoires.
  3. Synthétisez la colonne. AVERAGE, PERCENTILE.INC et COUNTIF (divisé par le nombre d’itérations) donnent la moyenne, le P80 et la probabilité de dépasser un objectif ; un histogramme montre la forme de la distribution.
Tirages aléatoires avec des formules Excel
EntréeFormule
Normale (moyenne, écart type)=NORM.INV(RAND(), mean, sd)
PERT (min, plus probable, max)=BETA.INV(RAND(), 1+4*(ml-min)/(max-min), 1+4*(max-ml)/(max-min), min, max)
Triangulaire (min, plus probable, max), avec le tirage en U=IF(U<(ml-min)/(max-min), min+SQRT(U*(max-min)*(ml-min)), max-SQRT((1-U)*(max-min)*(max-ml)))
Événement de risque (probabilité p, coût c)=IF(RAND()<p, c, 0)

Cela fonctionne, et c’est une bonne façon d’apprendre. Les limites se voient sur les modèles réels :

2. Un complément Excel

Des compléments comme @RISK, Crystal Ball, Analytic Solver et ModelRisk ajoutent des fonctions de distribution à Excel (par exemple une fonction PERT que vous saisissez dans une cellule), exécutent les itérations à votre place, et produisent des graphiques, une analyse de sensibilité et des rapports. Ils s’exécutent dans Excel : chaque utilisateur doit donc avoir Excel et le complément installés, ce qui, dans beaucoup d’entreprises, passe par une demande au service informatique.

3. Un outil qui exécute le fichier hors d’Excel

Troisième option : un outil doté de son propre moteur de calcul, qui lit le fichier .xlsx et exécute lui-même les itérations. xellstorm fonctionne ainsi, dans le navigateur :

Les trois méthodes côte à côte

Excel seulComplément Excelxellstorm
InstallationRienUn complément dans ExcelRien : s’exécute dans le navigateur
DistributionsÀ construire avec des formulesNombreuses, sous forme de fonctions48, dont vos propres tables
Répétition des itérationsTable de données, qui recalcule tout le fichierIntégréeIntégrée ; dans la plupart des fichiers, seul ce qui change est recalculé
Mêmes nombres d’une fois à l’autreNon, sauf collage en valeursAvec une graine fixeAvec une graine, quel que soit le nombre de cœurs du processeur
Corrélation, sensibilité, rapportsVos propres formules et graphiquesIntégréeIntégrée

Comment lire les résultats

Moyenne
La moyenne de tous les résultats simulés. Avec des entrées asymétriques, elle diffère du résultat obtenu avec les entrées les plus probables.
Centiles (P10, P50, P80, P90)
La valeur que 10 %, 50 %, 80 % ou 90 % des résultats ne dépassent pas. Le P50 est la médiane ; P80 et P90 sont des niveaux de budget courants (en savoir plus sur les niveaux P).
Probabilité d’un objectif
La part des résultats qui remplissent une condition, par exemple un coût total supérieur au budget.
Courbe en S
La probabilité cumulée tracée en fonction du résultat : on y lit n’importe quel centile, ou la probabilité de rester sous une valeur quelconque.
Diagramme en tornade
De combien le résultat bouge quand chaque entrée passe d’un centile bas à un centile haut, les autres restant à leur médiane ; les barres les plus larges désignent les entrées qui comptent le plus (diagrammes en tornade).
CVaR (moyenne des 5 % les plus défavorables)
La moyenne des 5 % de résultats les plus défavorables : la gravité des cas défavorables, et pas seulement leur fréquence (dimensionner une réserve d’après les pires résultats).

Combien d’itérations ?

Assez pour que les chiffres que vous présentez cessent de bouger. Le bruit d’une moyenne simulée diminue comme la racine carrée du nombre d’itérations : multiplier ce nombre par quatre le divise par deux. Quelques milliers d’itérations font un point de départ courant ; les centiles de queue comme le P95 en demandent plus que la moyenne. xellstorm peut tourner jusqu’à ce que la moyenne et les centiles se stabilisent dans la tolérance que vous fixez.

Questions

Simulation de Monte-Carlo et analyse de scénarios, est-ce la même chose ?

Non. L’analyse de scénarios calcule quelques cas choisis, comme le meilleur cas, le cas de référence et le pire, sans dire avec quelle probabilité chacun se produit. Une simulation tire des milliers de combinaisons dans les fourchettes et donne la probabilité de chaque résultat.

Quelle distribution utiliser pour une estimation ?

Pour des estimations d’expert données en min, plus probable et max : PERT ou triangulaire. Pour des grandeurs qui ne peuvent pas descendre sous zéro et ont une longue queue à droite : log-normale. Pour un événement qui survient ou non : une probabilité, avec un coût s’il survient. Avec des données, ajustez une distribution à ces données.

Dois-je modifier mon fichier ?

Pas avec xellstorm : les distributions sont gardées à côté du fichier, pas dedans, et peuvent lire leurs nombres dans des cellules que vous avez déjà, par exemple des colonnes Min / Probable / Max ; vos formules restent telles que vous les avez écrites. Avec Excel seul ou un complément, les fourchettes sont gardées dans le fichier lui-même, sous forme de formules ou de définitions propres au complément.

Comment créer une distribution PERT dans Excel ?

Excel n’a pas de fonction PERT, mais une distribution PERT est une distribution bêta mise à l’échelle entre le min et le max, et BETA.INV permet donc d’y tirer des valeurs : =BETA.INV(RAND(), 1+4*(ml-min)/(max-min), 1+4*(max-ml)/(max-min), min, max), en remplaçant min, plus probable (ml) et max par des références de cellules. Sa moyenne est (min + 4 × plus probable + max) / 6. La distribution PERT dans Excel la compare à la distribution triangulaire.

Peut-on faire une simulation de Monte-Carlo dans Excel sans complément ?

Oui. Tirez chaque entrée incertaine avec une formule comme =NORM.INV(RAND(), mean, sd), répétez le modèle avec une table de données, et résumez les résultats avec AVERAGE, PERCENTILE.INC et COUNTIF. Ou ouvrez le fichier dans xellstorm, qui exécute les itérations dans le navigateur, sans complément et sans Excel.

À lire aussi

xellstorm est un outil de simulation de Monte-Carlo qui fonctionne dans le navigateur, pour les modèles Excel : aucun complément, et votre fichier ne quitte jamais votre ordinateur.