ALEATORIO.ENTRE (en inglés RANDBETWEEN) es la función de Excel que devuelve un número al azar entre dos valores que tú eliges, y cambia cada vez que la hoja se recalcula. Con ella puedes simular un dado, sortear un ganador entre los participantes de un concurso o sacar una muestra de clientes al azar de una lista más grande. En este tutorial trabajarás sobre un único libro, SorteoNavidad, que irá creciendo: empezamos con un dado y un sorteo, seguimos con varios ganadores sin que se repitan y terminamos con una muestra de clientes sacada de una tabla grande. Todo funciona en Excel 2007 en adelante; la función MATRIZALEAT (en inglés RANDARRAY) requiere Excel 2021, 2024 o Microsoft 365.
Qué es un número aleatorio en Excel y para qué te sirve
Un número aleatorio es, simplemente, un valor que Excel escoge al azar de entre varios posibles. Cada vez que la hoja se recalcula (al pulsar F9, al escribir algo en una celda o al guardar el libro), Excel genera uno nuevo, y eso es justo lo que necesitas para juegos, sorteos, muestras y simulaciones.
Imagina el libro SorteoNavidad. Una hoja llamada Sorteo con la lista de participantes de la cena de empresa en la columna A, y al lado el número que cada uno ha sacado al tirar un dado en la columna B. Cuando pulses F9, los dados se vuelven a tirar. Otro día puedes añadir en la columna D el ganador del sorteo, elegido con un número del 1 al 10. Todo eso lo hace la familia de funciones "aleatorio": ALEATORIO, ALEATORIO.ENTRE y, desde Excel 2021, MATRIZALEAT.
La diferencia clave con otras funciones es que estas son volátiles: cambian solas cada vez que algo en el libro se recalcula. Eso es una ventaja cuando quieres que un dado se mueva, y un problema cuando ya tienes al ganador y no quieres que cambie al pulsar F9. Más adelante verás cómo dejarlo fijo con Pegado especial.
En la práctica, con estas tres funciones puedes: tirar dados, sortear ganadores únicos, sacar muestras de tablas grandes, generar contraseñas temporales y hacer simulaciones de Monte Carlo con unas pocas fórmulas.
Las funciones que generan números al azar y sus argumentos
Las tres funciones que necesitas están en esta tabla. Todas son volátiles: cambian en cada recálculo.
ALEATORIO y ALEATORIO.ENTRE, las dos clásicas
| Función | Sintaxis | Qué devuelve | Disponible desde |
|---|---|---|---|
| ALEATORIO (RAND) | =ALEATORIO() | Un decimal entre 0 y 1 | Excel 2007 |
| ALEATORIO.ENTRE (RANDBETWEEN) | =ALEATORIO.ENTRE(inferior;superior) | Un entero entre los dos límites, ambos incluidos | Excel 2007 |
ALEATORIO.ENTRE es la más útil para sorteos porque devuelve enteros: =ALEATORIO.ENTRE(1;6) simula un dado, =ALEATORIO.ENTRE(1;100) un número de lotería. Si escribes el límite inferior mayor que el superior, devuelve #¡NUM!.
MATRIZALEAT para rellenar varias celdas de una vez
| Función | Sintaxis | Qué devuelve | Disponible desde |
|---|---|---|---|
| MATRIZALEAT (RANDARRAY) | =MATRIZALEAT(filas;columnas;mínimo;máximo;entero) | Una matriz de números aleatorios con el tamaño y el rango que indiques | Excel 2021 y Microsoft 365 |
Los cinco argumentos son opcionales. Si escribes =MATRIZALEAT(5;3;1;100;VERDADERO) obtienes una tabla de 5 filas y 3 columnas llena de enteros del 1 al 100, y al pulsar F9 se vuelve a generar entera de golpe.
Un dado y un sorteo de Navidad en una hoja nueva
Empezamos el libro SorteoNavidad. Crea un libro nuevo y renombra la primera hoja como Sorteo. En A1 escribe Participante y en B1 Dado. Rellena A2:A11 con diez nombres de personas: Ana, Berta, Carlos, David, Elena, Fran, Gema, Hugo, Inés, Jorge.
- Selecciona B2 y escribe la fórmula del dado.
- Pulsa Entrar y arrastra el controlador de relleno hasta B11.
=ALEATORIO.ENTRE(1;6)
| A | B | |
|---|---|---|
| 1 | Participante | Dado |
| 2 | Ana | 4 |
| 3 | Berta | 2 |
| 4 | Carlos | 6 |
| 5 | David | 3 |
| 6 | Elena | 5 |
| 7 | Fran | 1 |
| 8 | Gema | 4 |
| 9 | Hugo | 2 |
| 10 | Inés | 6 |
| 11 | Jorge | 3 |
Ahora añade el sorteo del número ganador entre 1 y 10 y el nombre que sale. En D1 escribe Número y en E1 Ganador. En D2:
=ALEATORIO.ENTRE(1;10)
En E2 buscas el nombre que está en la posición D2 dentro de la lista de participantes:
=INDICE($A$2:$A$11;COINCIDIR(D2;$B$2:$B$11;0))
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Participante | Dado | Número | Ganador | |
| 2 | Ana | 4 | 7 | Hugo | |
| 3 | Berta | 2 |
Fijar el ganador con Pegado especial valores
Cuando ya tengas al ganador, no quieres que cambie al pulsar F9. Fijarlo es rápido.
- Selecciona D2 y copia con Ctrl+C.
- En la misma celda, abre Pegado especial con Ctrl+Alt+V.
- Elige Valores y pulsa Aceptar.
- Repite lo mismo con E2.
Después de pegar, en la barra de fórmulas verás solo el número, no la fórmula. Ya tienes el ganador congelado.
Elegir varios ganadores sin que se repitan
Ahora la hoja Sorteo crece: queremos sacar cinco ganadores de entre veinte participantes, sin que se repita ninguno. Añade diez nombres más a la lista hasta tener A2:A21. En C1 escribe Aleatorio (auxiliar) y en D1 Ganadores. La idea es dar a cada participante un decimal único con ALEATORIO y luego elegir los cinco valores más altos: sus posiciones no se repiten porque cada decimal es prácticamente único.
- En C2 escribe =ALEATORIO() y copia hasta C21 con el controlador de relleno.
- En D1 escribe Ganadores y en D2:
=K.ESIMO.MAYOR($C$2:$C$21;FILA()-1)
- En E1 escribe Nombre y en E2:
=INDICE($A$2:$A$21;COINCIDIR(D2;$C$2:$C$21;0))
- Copia D2:E2 hacia abajo hasta la fila 6.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Participante | Aleatorio | Ganadores | Nombre | |
| 2 | Ana | 0,231 | 0,981 | Hugo | |
| 3 | Berta | 0,874 | 0,952 | Gema | |
| 4 | Carlos | 0,512 | 0,933 | Inés | |
| 5 | David | 0,109 | 0,902 | Jorge | |
| 6 | Elena | 0,667 | 0,874 | Berta | |
| 7 | Fran | 0,445 | |||
| 8 | Gema | 0,952 | |||
| 9 | Hugo | 0,981 | |||
| 10 | Inés | 0,933 | |||
| 11 | Jorge | 0,902 |
Sacar una muestra de 10 filas de una tabla grande
Añade una hoja nueva llamada Clientes con 500 filas de una base de clientes. En A1:C1 escribe los encabezados Id, Nombre y Ciudad. Rellena A2:A501 con números del 1 al 500, B2:B501 con nombres genéricos (Cliente001, Cliente002, …) y C2:C501 con ciudades (Madrid, Barcelona, Valencia, Sevilla, Bilbao, repetidas).
- En D1 escribe Aleatorio.
- En D2 escribe =ALEATORIO() y copia hasta D501.
- Selecciona A1:D501.
- Ordena por la columna D de mayor a menor.
Las 10 primeras filas de la tabla ordenada son tu muestra al azar de 10 clientes.
Si tienes Excel 2021 o Microsoft 365, puedes saltarte la columna auxiliar con MATRIZALEAT. En una hoja aparte, en A1:
=MATRIZALEAT(10;1;1;500;VERDADERO)
| A | |
|---|---|
| 1 | 273 |
| 2 | 88 |
| 3 | 412 |
| 4 | 19 |
| 5 | 506 |
Para sacar el nombre de cada id, en B1:
=BUSCARX(A1;Clientes!$A$2:$A$501;Clientes!$B$2:$B$501)
Errores y sorpresas típicos al usar ALEATORIO.ENTRE
Estas tres situaciones se repiten mucho al usar números al azar en Excel. Cada una tiene su causa y su arreglo.
El número cambia solo cada vez que pulso F9 o guardo
Es el comportamiento normal de las funciones volátiles: cualquier cambio en el libro las obliga a recalcularse. Si ya tienes el ganador y no quieres que se mueva, cópialo y pégalo con Pegado especial > Valores sobre la misma celda. La fórmula desaparece y queda solo el número.
| A | C | D | |
|---|---|---|---|
| 1 | Participante | Número | |
| 2 | Ana | 7 |
ALEATORIO.ENTRE devuelve un decimal en vez de un entero
Si escribes =ALEATORIO.ENTRE(1,5;6,8) en vez de =ALEATORIO.ENTRE(1;6), Excel trunca los argumentos y puede dar resultados inesperados. La función solo trabaja con enteros: ambos límites deben ser números enteros, y el separador decimal depende de tu configuración regional. Si el decimal es la coma, los argumentos se separan con punto y coma.
| A | B | |
|---|---|---|
| 1 | Participante | Dado |
| 2 | Ana | 5 |
El arreglo es revisar que ambos límites sean enteros sin decimales y que el separador sea el correcto. Si la celda muestra #¡NUM!, el límite inferior es mayor que el superior: intercámbialos.
MATRIZALEAT muestra #¡DESBORDAMIENTO! en Excel 2021 o 365
MATRIZALEAT es una función de matriz dinámica: escribe los resultados en varias celdas contiguas a la vez. Si alguna de esas celdas ya tiene datos, Excel no puede derramar el resultado y muestra #¡DESBORDAMIENTO!.
| A | |
|---|---|
| 1 | #¡DESBORDAMIENTO! |
| 2 | Cliente273 |
El arreglo es borrar el contenido de A2:A10, o seleccionar un rango vacío más amplio (por ejemplo, mover la fórmula a C1). El error desaparece en cuanto las celdas de destino están libres.
Lo que ya sabes hacer con los números aleatorios en Excel
- Simular un dado o un número de lotería con
=ALEATORIO.ENTRE(1;6)o=ALEATORIO.ENTRE(1;100). - Sortear un ganador entre los participantes de una lista combinando
ALEATORIO.ENTREconINDICEyCOINCIDIR. - Sacar varios ganadores sin que se repitan con una columna auxiliar de
=ALEATORIO()yK.ESIMO.MAYOR. - Elegir una muestra al azar de 10 filas de una tabla grande con la columna auxiliar y Ordenar, o con
MATRIZALEATen Excel 2021 o 365. - Fijar el resultado de un sorteo con Pegado especial > Valores para que no cambie al pulsar F9.
El siguiente paso es combinar ALEATORIO.ENTRE con BUSCARX (en Excel 2021 o 365) para sacar un cliente al azar de la tabla Clientes y traer su nombre, ciudad y correo en una sola fórmula.
Dudas al usar ALEATORIO.ENTRE y las funciones al azar
1. ¿Cómo generar un número aleatorio en Excel?
Usa la función ALEATORIO (RAND) para obtener un decimal entre 0 y 1 en cualquier celda: escribe =ALEATORIO() y pulsa Intro. Cada vez que la hoja recalcula, el valor cambia automáticamente. Para fijarlo, cópialo con Ctrl+C y pégalo con Pegado especial > Solo valores (Datos > Pegado especial > Valores).
2. ¿Cómo usar un generador de números aleatorios en Excel?
ALEATORIO (RAND) devuelve un decimal entre 0 y 1, y ALEATORIO.ENTRE (RANDBETWEEN) devuelve un entero entre dos valores que tú elijas, por ejemplo =ALEATORIO.ENTRE(1;100). Escribe la fórmula en la celda y arrástrala con el controlador de relleno si necesitas varios números a la vez.
3. ¿Cómo elegir un nombre al azar de un grupo en Excel con una fórmula?
Pon la lista de nombres en un rango, por ejemplo A1:A10, y usa =INDICE(A1:A10;ALEATORIO.ENTRE(1;10)). INDICE devuelve el nombre que ocupa la posición elegida al azar por ALEATORIO.ENTRE. Para que no se repita entre sorteos, copia el resultado y pégalo con Pegado especial > Valores.
4. ¿Cómo generar números aleatorios en Excel sin que se repitan?
En Excel 2021 y Microsoft 365 usa =MATRIZALEATORIA(5;1;1;100;VERDADERO), donde 5 es la cantidad, 1 las filas, y 1 y 100 el rango sin repeticiones. En versiones anteriores, asigna =ALEATORIO() en una columna auxiliar, ordena los datos por ese valor y toma los primeros N: el orden cambia en cada cálculo.
5. ¿Cómo generar números aleatorios con decimales en Excel?
ALEATORIO (RAND) ya devuelve un decimal entre 0 y 1, así que solo tienes que escribir =ALEATORIO() en una celda. Si quieres un rango distinto, multiplica y suma: =ALEATORIO()*(50-1)+1 da decales y acotados entre 1 y 50. Para redondear, envuélvelo en REDONDEAR(…;2) y obtendrás dos decimales fijos.
Fuentes
- MicrosoftALEATORIO.ENTRE — documentación oficialconsultado el 07/10/2026
- MicrosoftALEATORIO — documentación oficialconsultado el 07/10/2026
- MicrosoftSIFECHA — documentación oficialconsultado el 07/10/2026
- Microsoft#¡DIV/0! — documentación oficialconsultado el 07/10/2026
- MicrosoftPAGO.INT.ENTRE — documentación oficialconsultado el 07/10/2026