Menu

Nombres aléatoires Excel : ALEA et ALEA.ENTRE.BORNES

=ALEA.ENTRE.BORNES(1;100) renvoie un nombre entier aléatoire de 1 à 100, et =ALEA() un nombre décimal aléatoire de 0 à 1. TABLEAU.ALEA remplit toute une plage, INDEX avec ALEA.ENTRE.BORNES tire un élément au hasard, et Collage spécial > Valeurs fige les résultats.

Chaque feuille de cette page est interactive : modifiez un nombre ou une formule et elle se recalcule.

=ALEA.ENTRE.BORNES(1;100) renvoie un nombre entier aléatoire de 1 à 100, bornes incluses. =ALEA() renvoie un nombre décimal aléatoire supérieur ou égal à 0 et inférieur à 1. Les deux donnent de nouveaux nombres à chaque recalcul de la feuille. Dans un Excel anglais, ces fonctions s'appellent RANDBETWEEN et RAND ; le tableau affiche les formules sous cette forme, avec des virgules, mais vous pouvez aussi les taper comme dans un Excel français, avec des points-virgules : =ALEA.ENTRE.BORNES(1;100).

Nombres aléatoires
B2
AB
1FormulaResult
2Decimal 0 to 10.256679579
3Whole 1 to 10024
4Die roll4
5CoinTails
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =ALEA()

Modifiez n'importe quelle cellule (tapez un mot en A6, par exemple) et tous les résultats changent. Dans Excel, la même chose se produit à chaque modification n'importe où dans le classeur, et F9 force une nouvelle série. Les nombres que vous voyez ici ne sont pas ceux que voit un autre lecteur.

Syntaxe de ALEA et ALEA.ENTRE.BORNES

=RAND()
=RANDBETWEEN(bottom, top)

ALEA ne prend aucun argument ; les parenthèses vides sont obligatoires. ALEA.ENTRE.BORNES prend le plus petit et le plus grand nombre entier qu'elle peut renvoyer, et renvoie #NOMBRE! (en anglais #NUM!) si bottom (min) est plus grand que top (max).

Nombre aléatoire entre deux valeurs

ALEA.ENTRE.BORNES ne renvoie que des nombres entiers. Pour un nombre décimal aléatoire dans un intervalle, mettez ALEA à l'échelle : multipliez par la largeur de l'intervalle et ajoutez la plus petite valeur. Entourez le tout d'ARRONDI pour garder deux décimales.

Valeurs aléatoires dans un intervalle
D2
ABCD
1MinMaxKindRandom value
21050Whole46
31050Decimal49.74
42026-01-012026-12-31Date2026-09-04
5-55Whole-5
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =ALEA.ENTRE.BORNES(A2;B2)

Modifiez le min et le max des colonnes A et B : les résultats restent dans le nouvel intervalle. Les dates sont des nombres entiers dans Excel, donc ALEA.ENTRE.BORNES entre deux dates renvoie une date au hasard ; mettez la cellule au format date (Accueil > Format de nombre > Date courte), sinon elle affiche un numéro de série. Les bornes négatives fonctionnent aussi.

TABLEAU.ALEA : beaucoup de nombres aléatoires d'un coup

Dans Excel 365 et Excel 2021, =TABLEAU.ALEA(lignes;colonnes;min;max;entier) (RANDARRAY en anglais) remplit toute une plage à partir d'une seule cellule. Chaque argument est facultatif : =TABLEAU.ALEA(5) donne cinq décimaux de 0 à 1 dans une colonne.

TABLEAU.ALEA déverse un bloc de nombres
A2
ABCD
1Whole numbers 1 to 100Decimals 0 to 1
26423310.040617832
38389550.480702855
49578920.305043489
5436920.133745562
64473640.581903097
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =TABLEAU.ALEA(5;3;1;100;VRAI)

A2 remplit A2:C6 de nombres entiers (le dernier argument, TRUE, c'est-à-dire VRAI, demande des entiers ; omettez-le pour des décimaux). Excel 2019 et les versions antérieures n'ont pas TABLEAU.ALEA : écrivez =ALEA.ENTRE.BORNES(1;100) dans une cellule et recopiez-la sur la plage.

Tirer un élément au hasard dans une liste

Pour tirer au sort un nom, un produit ou une question, choisissez une position au hasard avec ALEA.ENTRE.BORNES et renvoyez l'élément à cette position avec INDEX. NBVAL compte les noms, donc la plage peut dépasser la liste sur des lignes vides : =INDEX(A2:A100;ALEA.ENTRE.BORNES(1;NBVAL(A2:A100))) continue de fonctionner quand vous ajoutez des noms en dessous.

Gagnant au hasard
C2
ABC
1NameWinner
2AnaFinn
3Ben
4Cleo
5Dan
6Eve
7Finn
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =INDEX(A2:A7;ALEA.ENTRE.BORNES(1;NBVAL(A2:A7)))

Chaque nom a la même chance, une sur six. Deux cellules contenant cette formule peuvent tirer le même nom ; pour plusieurs gagnants différents, mélangez plutôt la liste (section suivante) et prenez les premières lignes.

Mélanger une liste et tirer des nombres sans répétition

=TRIERPAR(A2:A7;TABLEAU.ALEA(6)) trie la liste selon six nombres aléatoires, ce qui la met dans un ordre aléatoire. Comme chaque élément n'apparaît qu'une fois, le résultat ne se répète jamais : c'est la façon standard de tirer plusieurs noms ou nombres différents dans Excel 365 et 2021.

Liste mélangée et 3 nombres différents de 1 à 20
C2
ABCDE
1NameShuffled3 of 1 to 20
2AnaFinn8
3BenBen3
4CleoAna12
5DanCleo
6EveEve
7FinnDan
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.Dans Excel en français : =TRIERPAR(A2:A7;TABLEAU.ALEA(LIGNES(A2:A7)))

E2 mélange les nombres de 1 à 20 produits par SEQUENCE et garde les trois premiers avec PRENDRE (TAKE) : les trois sont donc toujours différents. PRENDRE demande Microsoft 365 ou Excel 2024 ; dans Excel 2021, écrivez =INDEX(TRIERPAR(SEQUENCE(20);TABLEAU.ALEA(20));SEQUENCE(3)). Dans Excel 2019, placez =ALEA() dans une colonne d'aide à côté de la liste et triez la liste selon cette colonne avec Données > Trier.

Essayez : mettre vous-même une valeur aléatoire à l'échelle

ALEA.ENTRE.BORNES, c'est ALEA mis à l'échelle d'un intervalle et coupé à un nombre entier. Ici, B2 contient une valeur qu'ALEA a renvoyée un jour, collée en tant que valeur pour qu'elle ne change plus.

Transformer une valeur d'ALEA en nombre entier
C2
ABCDE
1ItemRAND valueWhole numberMinMax
2Draw 10.372512
Cliquez sur une cellule pour voir sa formule. Modifiez un nombre ou une formule et la feuille se recalcule.

À vous : B2 contient une valeur issue d'ALEA. En C2, transformez-la en nombre entier compris entre le min de D2 et le max de E2, bornes incluses, comme le fait ALEA.ENTRE.BORNES : multipliez par le nombre de valeurs possibles, supprimez les décimales avec ENT (INT), puis ajoutez le min.

Indice : de 5 à 12, il y a E2-D2+1 valeurs possibles, soit 8.

Erreur fréquente : des résultats qui changent après usage

Un tirage au sort qui change à la modification suivante ne sert à rien pour garder une trace du gagnant ou des lignes d'un échantillon. Une fois que vous avez les nombres voulus, transformez-les en valeurs :

  1. Sélectionnez les cellules et copiez-les (Ctrl+C, Cmd+C sur Mac).
  2. Accueil > Coller > Valeurs. Sous Windows, Ctrl+Alt+V, puis V, puis Entrée ; sur Mac, Ctrl+Cmd+V puis choisissez Valeurs.

Pour une seule cellule, appuyez sur F2 pour la modifier, sur F9 pour remplacer la formule par son résultat actuel, puis sur Entrée. Si vous avez besoin des mêmes nombres "aléatoires" à chaque fois, pour un test ou un exercice en classe, Excel n'a pas d'argument de graine : collez les valeurs une fois et gardez cette feuille. ALEA convient aux échantillons, aux jeux et aux données de test, mais pas aux mots de passe ni à quoi que ce soit lié à la sécurité.

Questions fréquentes

Comment générer un nombre aléatoire entre deux nombres dans Excel ?

Pour des entiers, utilisez =ALEA.ENTRE.BORNES(10;50), qui peut renvoyer 10 comme 50. Pour des décimaux, utilisez =ALEA()*(50-10)+10, ou =TABLEAU.ALEA(1;1;10;50) dans Excel 365 ou 2021.

Comment empêcher des nombres aléatoires de changer dans Excel ?

Remplacez les formules par leurs valeurs : copiez les cellules, puis Accueil > Coller > Valeurs. Sous Windows, Ctrl+Alt+V, V, Entrée fait la même chose ; sur Mac, Ctrl+Cmd+V ouvre le Collage spécial, où vous choisissez Valeurs. Pour une seule cellule, appuyez sur F2, puis F9 (Fn+F9 sur certains portables), puis Entrée.

Comment tirer un nom au hasard dans une liste Excel ?

Utilisez =INDEX(A2:A7;ALEA.ENTRE.BORNES(1;NBVAL(A2:A7))). NBVAL compte les noms, ALEA.ENTRE.BORNES choisit une position et INDEX renvoie le nom à cette position.

Comment générer des nombres aléatoires sans doublons dans Excel ?

Mélangez une séquence et prenez les premiers éléments : =PRENDRE(TRIERPAR(SEQUENCE(50);TABLEAU.ALEA(50));6) donne 6 nombres différents de 1 à 50 dans Excel 365. Dans Excel 2021, qui n'a pas PRENDRE, utilisez =INDEX(TRIERPAR(SEQUENCE(50);TABLEAU.ALEA(50));SEQUENCE(6)). ALEA.ENTRE.BORNES dans plusieurs cellules peut se répéter.

Comment générer une date aléatoire dans Excel ?

Utilisez ALEA.ENTRE.BORNES avec deux dates : =ALEA.ENTRE.BORNES(DATE(2026;1;1);DATE(2026;12;31)) renvoie un jour au hasard de 2026. Mettez la cellule au format date, sinon elle affiche le numéro de série de la date.

Illustration des langages de programmation de Coddy

Apprendre à coder avec Coddy

COMMENCER