Accéder au contenu principal

Générateur de nombres aléatoires Excel : 3 méthodes différentes

Il existe plusieurs façons de générer des nombres aléatoires dans Excel, comme les fonctions `RAND(),` `RANDBETWEEN(),` et `RANDARRAY()`.
Actualisé 18 févr. 2025  · 6 min de lecture

Les nombres aléatoires sont utilisés dans Excel pour toutes sortes de tâches telles que les simulations et les tests d'hypothèse. Dans cet article, je vais vous présenter les différentes façons de les générer. Nous commencerons par les fonctions de base telles que RAND() et RANDBETWEEN(),, puis nous passerons à des options plus avancées telles que RANDARRAY().. À la fin, vous saurez exactement comment utiliser chacune de ces fonctions et comment choisir entre elles.

Aperçu des fonctions de nombres aléatoires d'Excel

Excel peut générer des nombres aléatoires sous forme de décimales simples, de nombres entiers à l'intérieur d'une plage ou même de tableaux entiers de valeurs. Examinons trois façons différentes de le faire :

Fonction RAND()

La fonction RAND() donne une décimale aléatoire entre 0 et 1. Il s'agit d'une fonction importante ( ), c'est pourquoi nous l'avons incluse dans notre liste des 15 formules de base d'Excel que tout le monde doit connaître.

Pour générer des nombres décimaux aléatoires entre 0 et 1, entrez simplement =RAND() dans l'une des cellules. Si vous souhaitez obtenir davantage de nombres aléatoires, faites glisser la souris pour appliquer cette formule à des lignes supplémentaires.

Génération de nombres aléatoires à l'aide de la fonction RAND dans Excel.

Générez des nombres aléatoires à l'aide de la fonction RAND(). Image par l'auteur.


Vous pouvez également utiliser la fonction RAND() pour générer différents types de nombres, tels que

  • Des nombres aléatoires dans une fourchette spécifique: Utilisez la formule suivante : RAND() * N formula. Ici, N peut être n'importe quelle valeur. 

  • Nombre aléatoire entre deux nombres quelconques: Utilisez la formule suivante : RAND() * (b - a) + a. Ici, b est la valeur la plus élevée et a la plus basse. Le résultat sera toujours inférieur à la valeur b.

  • Des nombres aléatoires qui sont des nombres entiers au lieu de nombres décimaux: Utilisez les formules ci-dessus et intégrez-les dans la fonction INT().

=RAND()*100
=RAND()*(20-10)+10
=INT(RAND()*(20-10)+10)

Générez des nombres entiers aléatoires avec la fonction RAND() dans Excel.

Générez des nombres entiers aléatoires avec la fonction RAND(). Image par l'auteur.

Vous remarquerez que ces chiffres sont mis à jour chaque fois que j'entre de nouveaux chiffres dans la feuille. Veillez à utiliser Collage spécial > Valeurs si vous souhaitez bloquer les chiffres en place. (nous y reviendrons plus tard).

Fonction RANDBETWEEN()

RANDBETWEEN() génère des nombres entiers aléatoires compris dans l'intervalle spécifié. Sa syntaxe est la suivante :

=RANDBETWEEN(bottom, top)

La valeur inférieure est la plus faible et la valeur supérieure est la plus élevée.

Par exemple, imaginez que je veuille générer des nombres entiers entre 10 et 20. Je peux utiliser la formule suivante :

=RANDBETWEEN(10,20)

Générer des nombres aléatoires en utilisant RANDBETWEEN() dans Excel

Générez des nombres aléatoires à l'aide de RANDBETWEEN(). Image par l'auteur.

Remarquez que vous pourriez obtenir le même résultat avec =INT(RAND()*(20-10)+10). Mais je préfère RANDBETWEEN() car il s'agit d'une version plus facile et améliorée de la fonction RAND() conçue pour ce type de travail. Avec RAND(),, je dois écrire une longue formule pour obtenir un nombre entier aléatoire entre deux valeurs. Mais avec RANDBETWEEN(),, je peux le faire en une seule étape.

Fonction RANDARRAY()

RANDARRAY() a été introduit dans Excel 365. Il renvoie un tableau de nombres aléatoires et nous permet de spécifier le nombre de valeurs, de lignes et de colonnes à remplir - le tout sans faire glisser la formule - et nous pouvons choisir de renvoyer des décimales ou des nombres entiers.

=RANDARRAY([rows],[columns],[min],[max],[whole_number])

Ici :

  • rows fait référence au nombre de lignes que nous voulons remplir.

  • columns fait référence au nombre de colonnes que nous voulons remplir.

  • min spécifie le nombre le plus bas.

  • max spécifie le nombre le plus élevé.

  • whole_number prend TRUE pour les nombres entiers et FALSE (ou laissez vide) pour les décimales.

Voyons comment cela fonctionne dans la réalité. Supposons que je veuille générer des nombres décimaux aléatoires sur 4 colonnes et 6 lignes entre 10 et 20. Dans ce cas, ma formule serait la suivante :

=RANDARRAY(6,4,10,20)

Pour les nombres entiers, la formule serait la suivante :

=RANDARRAY(6,4,10,20,TRUE)

Ainsi, chaque fois que j'actualise la feuille de calcul, de nouveaux chiffres sont générés.

Génération de nombres aléatoires à l'aide de la fonction RANDARRAY() dans Excel.

Générez des nombres aléatoires à l'aide de la fonction RANDARRAY(). Image par l'auteur.

Comparaison rapide de toutes les fonctions 

Voici une comparaison rapide des trois fonctions :

Fonctionnalité RAND() RANDBETWEEN() RANDARRAY()
Type de sortie Décimale Entiers compris dans un intervalle spécifié Décimale ou entière
Option de gamme disponible Non Oui Oui
Donne des valeurs multiples Non Non Oui
Versions disponibles Toutes les versions (Excel 365 - 2000) Excel 365 - 2007 Excel 365 - 2021

Utilisations spécifiques du générateur de nombres aléatoires Excel 

Voyons quelques exemples concrets de l'utilisation des générateurs de nombres aléatoires.

Générer des nombres aléatoires uniques

Parfois, nous voulons générer des nombres aléatoires qui ne se répètent pas. Bien qu'Excel ne dispose pas d'une fonction directe pour cela, nous pouvons combiner deux fonctions :

  1. RAND() avec RANK.EQ()

  2. RANDARRAY() avec UNIQUE() 

Supposons que j'aie besoin de 10 numéros aléatoires uniques. Tout d'abord, j'applique RAND() dans la cellule A2 pour générer des nombres aléatoires et les faire glisser vers A10. Ensuite, dans la cellule B2, comme je veux que ces nombres soient des valeurs uniques, j'introduis la formule suivante :

=RANK.EQ(A2,$A$2:$A$10)

Générez des nombres aléatoires uniques en utilisant RANK.EQ et RAND dans Excel.

Générez des nombres aléatoires uniques en utilisant RANK.EQ(). Image par l'auteur.

Une autre façon de procéder consiste à envelopper la fonction RANDARRAY() dans la fonction UNIQUE(). Ici, je génère 10 nombres aléatoires uniques entre 1 et 20 à l'aide de cette formule :

=UNIQUE(RANDARRAY(10,1,1,20,TRUE))

Générer des nombres aléatoires avec UNIQUE et RANDARRAY dans Excel. 

Générez des nombres aléatoires avec UNIQUE() et RANDARRAY(). Image par l'auteur.

Note : Tant UNIQUE() que RANDARRAY() ne fonctionnent que dans Excel 365 et 2021. Suivez notre cursus Excel Fundamentals pour rester à jour.

Générer des nombres avec des distributions spécifiques

Excel permet également de générer des nombres aléatoires suivant une distribution spécifique, telle qu'une distribution normale, ce qui peut s'avérer utile dans le cadre d'une simulation de type Monte Carlo. Pour ce faire, vous pouvez utiliser la fonction NORM.INV().

=NORM.INV(probability, mean, standard deviation)

Ici : 

  • probability est une décimale aléatoire comprise entre 0 et 1 (RAND()).

  • mean est la valeur moyenne autour de laquelle les chiffres doivent s'articuler.

  • l'écart-type correspond à l'ampleur des fluctuations des chiffres par rapport à la moyenne.

Par exemple, je souhaite créer des notes de test aléatoires pour une classe d'étudiants et fixer la note moyenne à 75. La plupart des étudiants obtiennent 10 points (ce qui signifie que leur score est compris entre 65 et 85). J'ai donc appliqué la formule suivante à toutes les lignes :

=NORM.INV(RAND(), 75, 10)

Génération d'une distribution normale à l'aide de la fonction NORM.INV dans Excel.

Générez une distribution normale à l'aide de la fonction NORM.INV(). Image par l'auteur.

Anonymiser et tester les données

Nous pouvons même utiliser des nombres aléatoires pour remplacer des données sensibles (comme des numéros de compte ou de téléphone) à des fins de test ou de confidentialité des données.

Ici, j'ai une liste de numéros de compte, et je veux rendre anonymes les quatre premiers chiffres des numéros de compte, donc je les remplace par des nombres aléatoires généraux à l'aide de cette formule :

=REPLACE(A2,1,4,RANDBETWEEN(1,4))

Cachez/anonymisez les données sensibles avec des nombres aléatoires grâce à la fonction RANDBETWEEN dans Excel.

Masquez les données sensibles par des nombres aléatoires. Image par l'auteur.

Prendre de meilleures décisions

Cela peut paraître surprenant, mais nous pouvons même utiliser des nombres aléatoires pour prendre des décisions rapides. Par exemple, si je veux choisir au hasard un gagnant dans une longue liste, je peux extraire un nom aléatoire de la plage donnée.

Ci-dessous, j'ai une liste de noms dans les cellules A2 à A10 pour un concours, et je veux sélectionner un gagnant. Pour ce faire, j'introduis la formule suivante dans la cellule C2, et le gagnant est choisi au hasard :

=INDEX(A2:A10, RANDBETWEEN(1, 11))

Choisissez un nom au hasard dans une liste en utilisant la fonction RANDBETWEEN dans Excel.

Choisissez un gagnant au hasard. Image par l'auteur.

Comment empêcher le recalcul des nombres aléatoires ?

Le problème des nombres aléatoires est qu'ils changent à chaque fois que la feuille est mise à jour. Si vous souhaitez les maintenir fixes, convertissez-les en valeurs statiques. Il y a deux façons de procéder :

  • Sélectionnez la plage de nombres aléatoires, appuyez sur Ctrl + C pour les copier, puis cliquez avec le bouton droit de la souris et choisissez Coller spécial > Valeurs.
  • Pour arrêter de recalculer les nombres dans une cellule, cliquez sur la cellule et, dans la barre de formule, appuyez sur la touche F9.

Comprendre les algorithmes de nombres aléatoires d'Excel

Si vous êtes curieux de savoir ce qui se passe sous le capot des fonctions de nombres aléatoires d'Excel, je vais vous en parler un peu.

Depuis Excel 2010, Microsoft Excel utilise l'algorithme Mersenne Twister pour générer des nombres aléatoires. Il produit des nombres aléatoires de haute qualité qui satisfont à de nombreux tests statistiques. L'une des versions les plus utilisées est MT19937, basée sur un type particulier de nombre premier appelé nombre premier de Mersenne.

Avant le Mersenne Twister, on utilisait la méthode du carré moyen. Il élève un nombre au carré et traite le chiffre du milieu comme un nombre aléatoire. Bien qu'il s'agisse d'une idée intelligente à l'époque, développée par le génie John von Neumann, on a découvert qu'elle produisait des schémas et qu'elle pouvait même se bloquer en répétant les mêmes nombres. C'est pourquoi le Mersenne Twister l'a remplacé.

Réflexions finales 

Nous avons étudié différentes façons de générer des nombres aléatoires dans Excel, des simples décimales avec RAND() aux nombres entiers avec RANDBETWEEN() et même des tableaux complets de valeurs aléatoires avec RANDARRAY().

Si vous souhaitez en savoir plus sur le traitement des données dans Excel, consultez nos cours Préparation des données dans Excel et Visualisation des données dans ExcelEn outre, cliquez ci-dessous pour notre cursus Excel Fundamentals - aucune expérience préalable n'est requise.

Faites progresser votre carrière avec Excel

Acquérir les compétences nécessaires pour optimiser Excel - aucune expérience n'est requise.

Commencez aujourd'hui gratuitement

Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Je suis un stratège du contenu qui aime simplifier les sujets complexes. J'ai aidé des entreprises comme Splunk, Hackernoon et Tiiny Host à créer un contenu attrayant et informatif pour leur public.

Sujets

Apprenez Excel avec DataCamp

cours

Data Preparation in Excel

3 hr
42.6K
Understand how to prepare Excel data through logical functions, nested formulas, lookup functions, and PivotTables.
Afficher les détailsRight Arrow
Commencer le cours
Voir plusRight Arrow
Apparenté

blog

Les 20 meilleures questions d'entretien pour les flocons de neige, à tous les niveaux

Vous êtes actuellement à la recherche d'un emploi qui utilise Snowflake ? Préparez-vous à répondre à ces 20 questions d'entretien sur le flocon de neige pour décrocher le poste !
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 min

blog

2022-2023 Rapport annuel DataCamp Classrooms

À l'aube de la nouvelle année scolaire, DataCamp Classrooms est plus motivé que jamais pour démocratiser l'apprentissage des données, avec plus de 7 650 nouveaux Classrooms ajoutés au cours des 12 derniers mois.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 min

blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates a offert plus de 20k bourses d'études à nos partenaires à but non lucratif au deuxième trimestre 2023. Découvrez comment des apprenants défavorisés et assidus ont transformé ces opportunités en réussites professionnelles qui ont changé leur vie.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

blog

Les 32 meilleures questions d'entretien sur AWS et leurs réponses pour 2024

Un guide complet pour explorer les questions d'entretien AWS de base, intermédiaires et avancées, ainsi que des questions basées sur des situations réelles. Il couvre tous les domaines, garantissant ainsi une stratégie de préparation bien équilibrée.
Zoumana Keita 's photo

Zoumana Keita

30 min

blog

Nous avons fait don de bourses DataCamp Premium à un million de personnes, et ce n'est pas fini.

Réparties entre nos deux programmes d'impact social, DataCamp Classrooms et #DCDonates, les bourses offrent un accès illimité à tout ce que DataCamp Premium a à offrir.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

blog

Célébration de Saghar Hazinyar : Une boursière de DataCamp Donates et une diplômée de Code to Inspire

Découvrez le parcours inspirant de Saghar Hazinyar, diplômée de Code to Inspire, qui a surmonté les défis en Afghanistan et s'est épanouie grâce à une bourse de DataCamp Donates.
Fereshteh Forough's photo

Fereshteh Forough

4 min

Voir plusVoir plus