=ALEATORIO.ENTRE(1;100) devuelve un número entero aleatorio del 1 al 100, los dos extremos incluidos. =ALEATORIO() devuelve un decimal aleatorio que es como mínimo 0 y menor que 1. Las dos dan números nuevos cada vez que la hoja se recalcula. En inglés estas funciones se llaman RANDBETWEEN y RAND, y la tabla muestra las fórmulas así: =RANDBETWEEN(1,100) y =RAND(). La tabla también acepta las fórmulas escritas en español, con punto y coma (o con comas, como en México).
| A | B | |
|---|---|---|
| 1 | Formula | Result |
| 2 | Decimal 0 to 1 | 0.256679579 |
| 3 | Whole 1 to 100 | 24 |
| 4 | Die roll | 4 |
| 5 | Coin | Tails |
=ALEATORIO()Edita cualquier celda (escribe una palabra en A6, por ejemplo) y todos los resultados cambian. En Excel pasa lo mismo con cada edición en cualquier parte del libro, y F9 obliga a generar una serie nueva. Los números que ves aquí no son los que ve otro lector.
Sintaxis de ALEATORIO y ALEATORIO.ENTRE
=RAND()
=RANDBETWEEN(bottom, top)
ALEATORIO no recibe argumentos; los paréntesis vacíos son obligatorios. ALEATORIO.ENTRE recibe el número entero más pequeño y el más grande que puede devolver, y devuelve #¡NUM! (#NUM! en inglés; la tabla muestra los nombres de error en inglés) si bottom (inferior) es mayor que top (superior).
Número aleatorio entre dos valores
ALEATORIO.ENTRE solo devuelve números enteros. Para un decimal aleatorio dentro de un rango, escala ALEATORIO: multiplica por el ancho del rango y suma el valor más bajo. Envuélvelo en REDONDEAR para conservar dos decimales.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Min | Max | Kind | Random value |
| 2 | 10 | 50 | Whole | 46 |
| 3 | 10 | 50 | Decimal | 49.74 |
| 4 | 2026-01-01 | 2026-12-31 | Date | 2026-09-04 |
| 5 | -5 | 5 | Whole | -5 |
=ALEATORIO.ENTRE(A2;B2)Cambia el mínimo y el máximo de las columnas A y B y los resultados se quedan dentro del nuevo rango. Las fechas son números enteros en Excel, así que ALEATORIO.ENTRE entre dos fechas devuelve una fecha aleatoria; da a la celda formato de fecha (Inicio > Formato de número > Fecha corta) o mostrará un número de serie. Los límites negativos también funcionan.
MATRIZALEAT: muchos números aleatorios a la vez
En Excel 365 y Excel 2021, =MATRIZALEAT(rows;columns;min;max;whole_number) (RANDARRAY en inglés) llena todo un rango desde una sola celda. Todos los argumentos son opcionales: =MATRIZALEAT(5) da cinco decimales del 0 al 1 en una columna.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Whole numbers 1 to 100 | Decimals 0 to 1 | ||
| 2 | 64 | 23 | 31 | 0.040617832 |
| 3 | 83 | 89 | 55 | 0.480702855 |
| 4 | 95 | 78 | 92 | 0.305043489 |
| 5 | 4 | 36 | 92 | 0.133745562 |
| 6 | 44 | 73 | 64 | 0.581903097 |
=MATRIZALEAT(5;3;1;100;VERDADERO)A2 llena A2:C6 con números enteros (el último argumento, TRUE, pide números enteros; omítelo para decimales). Excel 2019 y anteriores no tienen MATRIZALEAT: escribe =ALEATORIO.ENTRE(1;100) en una celda y cópiala al resto del rango.
Elegir un elemento al azar de una lista
Para sacar al azar un nombre, un producto o una pregunta, elige una posición aleatoria con ALEATORIO.ENTRE y devuelve el elemento de esa posición con INDICE. CONTARA cuenta los nombres, así que el rango puede pasar de la lista a filas vacías: =INDICE(A2:A100;ALEATORIO.ENTRE(1;CONTARA(A2:A100))) sigue funcionando cuando añades nombres debajo.
| A | B | C | |
|---|---|---|---|
| 1 | Name | Winner | |
| 2 | Ana | Finn | |
| 3 | Ben | ||
| 4 | Cleo | ||
| 5 | Dan | ||
| 6 | Eve | ||
| 7 | Finn |
=INDICE(A2:A7;ALEATORIO.ENTRE(1;CONTARA(A2:A7)))Cada nombre tiene la misma probabilidad, una entre seis. Dos celdas con esta fórmula pueden sacar el mismo nombre; para varios ganadores distintos, mezcla la lista (siguiente sección) y toma las primeras filas.
Mezclar una lista y números aleatorios sin repetir
=ORDENARPOR(A2:A7;MATRIZALEAT(6)) ordena la lista según seis números aleatorios, y eso la pone en orden aleatorio. Como cada elemento aparece una vez, el resultado nunca se repite, y es la forma estándar de sacar varios nombres o números distintos en Excel 365 y 2021.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Shuffled | 3 of 1 to 20 | ||
| 2 | Ana | Finn | 8 | ||
| 3 | Ben | Ben | 3 | ||
| 4 | Cleo | Ana | 12 | ||
| 5 | Dan | Cleo | |||
| 6 | Eve | Eve | |||
| 7 | Finn | Dan |
=ORDENARPOR(A2:A7;MATRIZALEAT(FILAS(A2:A7)))E2 mezcla los números del 1 al 20 creados por SECUENCIA y se queda con los tres primeros con TOMAR, así que los tres siempre son distintos. TOMAR (TAKE en inglés) necesita Microsoft 365 o Excel 2024; en Excel 2021 escribe =INDICE(ORDENARPOR(SECUENCIA(20);MATRIZALEAT(20));SECUENCIA(3)). En Excel 2019, pon =ALEATORIO() en una columna auxiliar junto a la lista y ordena la lista por esa columna con Datos > Ordenar.
Pruébalo: escala tú mismo un valor aleatorio
ALEATORIO.ENTRE es ALEATORIO escalado a un rango y recortado a un número entero. Aquí B2 contiene un valor que ALEATORIO devolvió en su momento, pegado como valor para que ya no cambie.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Item | RAND value | Whole number | Min | Max |
| 2 | Draw 1 | 0.372 | 5 | 12 |
Tu turno: B2 contiene un valor de ALEATORIO (RAND en inglés). En C2, conviértelo en un número entero desde el mínimo de D2 hasta el máximo de E2, los dos incluidos, como hace ALEATORIO.ENTRE: multiplica por la cantidad de números posibles, quita los decimales con ENTERO (INT en inglés) y suma el mínimo.
Pista: del 5 al 12 hay E2-D2+1 números posibles, es decir, 8.
Error habitual: resultados que cambian después de usarlos
Un sorteo que cambia con la siguiente edición no sirve como registro de quién ganó o de qué filas entraron en una muestra. Cuando tengas los números que quieres, conviértelos en valores:
- Selecciona las celdas y cópialas (Ctrl+C, Cmd+C en Mac).
- Inicio > Pegar > Valores. En Windows, Ctrl+Alt+V, luego V y luego Entrar; en Mac, Ctrl+Cmd+V y elige Valores.
Para una sola celda, pulsa F2 para editarla, F9 para reemplazar la fórmula por su resultado actual y Entrar. Si necesitas los mismos números "aleatorios" cada vez, para una prueba o un ejercicio de clase, Excel no tiene un argumento de semilla: pega los valores una vez y conserva esa hoja. ALEATORIO sirve para muestras, juegos y datos de prueba, pero no para contraseñas ni nada relacionado con la seguridad.
Preguntas frecuentes
¿Cómo genero un número aleatorio entre dos números en Excel?
Para números enteros usa =ALEATORIO.ENTRE(10;50), que puede devolver tanto 10 como 50. Para decimales usa =ALEATORIO()*(50-10)+10, o =MATRIZALEAT(1;1;10;50) en Excel 365 o 2021.
¿Cómo hago que los números aleatorios dejen de cambiar en Excel?
Reemplaza las fórmulas por sus valores: copia las celdas y luego Inicio > Pegar > Valores. En Windows, Ctrl+Alt+V, V, Entrar hace lo mismo; en Mac, Ctrl+Cmd+V abre Pegado especial, donde eliges Valores. Para una sola celda, pulsa F2, luego F9 (Fn+F9 en algunos portátiles) y luego Entrar.
¿Cómo elijo un nombre al azar de una lista en Excel?
Usa =INDICE(A2:A7;ALEATORIO.ENTRE(1;CONTARA(A2:A7))). CONTARA cuenta los nombres, ALEATORIO.ENTRE elige una posición e INDICE devuelve el nombre de esa posición.
¿Cómo genero números aleatorios sin repetir en Excel?
Mezcla una secuencia y toma los primeros: =TOMAR(ORDENARPOR(SECUENCIA(50);MATRIZALEAT(50));6) da 6 números distintos del 1 al 50 en Excel 365. En Excel 2021, que no tiene TOMAR, usa =INDICE(ORDENARPOR(SECUENCIA(50);MATRIZALEAT(50));SECUENCIA(6)). ALEATORIO.ENTRE en varias celdas puede repetirse.
¿Cómo genero una fecha aleatoria en Excel?
Usa ALEATORIO.ENTRE con dos fechas: =ALEATORIO.ENTRE(FECHA(2026;1;1);FECHA(2026;12;31)) devuelve un día aleatorio de 2026. Da a la celda formato de fecha, o mostrará el número de serie de la fecha.