Saltar al contenido principal

Generador de números aleatorios de Excel: 3 métodos diferentes

Existen múltiples formas de generar números aleatorios en Excel, como las funciones `RAND(),`RANDBETWEEN(),` y `RANDARRAY()`.
Actualizado 18 feb 2025  · 6 min de lectura

Los números aleatorios se utilizan en Excel para todo tipo de tareas, como simulaciones y pruebas de hipótesis. En este artículo, te guiaré a través de las diferentes formas de generarlas. Empezaremos con las básicas, como RAND() y RANDBETWEEN(),, y luego pasaremos a opciones más avanzadas, como RANDARRAY().. Al final, sabrás exactamente cómo utilizar cada una de estas funciones y cómo elegir entre ellas.

Visión general de las funciones de números aleatorios de Excel

Excel puede generar números aleatorios como decimales simples, números enteros dentro de un rango, o incluso tablas enteras de valores. Veamos tres formas diferentes de hacerlo:

Función RAND()

La función RAND() da un decimal aleatorio entre 0 y 1. Es una función importante de , por eso la incluimos en nuestra lista de 15 Fórmulas básicas de Excel que todo el mundo debe conocer.

Para generar números decimales aleatorios entre 0 y 1, simplemente introduce =RAND() en una de las celdas. Si quieres más números aleatorios, arrastra para aplicar esta fórmula a filas adicionales.

Generar números aleatorios utilizando la función RAND en excel.

Genera números aleatorios utilizando la función RAND(). Imagen del autor.


También puedes utilizar la función RAND() para generar distintos tipos de números, como por ejemplo:

  • Números aleatorios dentro de un rango específico: Utiliza esta fórmula: RAND() * N fórmula. Aquí, N puede ser cualquier valor. 

  • Número aleatorio entre dos números cualesquiera: Utiliza esta fórmula: RAND() * (b - a) + a. Aquí b es el valor más alto, y a el más bajo. El resultado siempre será menor que el valor b.

  • Números aleatorios que son enteros en lugar de decimales: Utiliza las fórmulas anteriores y envuélvelas dentro de la función INT().

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

Genera enteros aleatorios con la función RAND() en Excel.

Genera enteros aleatorios con la función RAND(). Imagen del autor.

Como nota, puedes observar que estos números se actualizan cada vez que introduzco nuevos números en la hoja. Asegúrate de utilizar Pegado especial > Valores si quieres fijar los números en su sitio (más sobre esto más adelante).

Función RANDBETWEEN()

RANDBETWEEN() genera enteros aleatorios entre el rango especificado. Su sintaxis es:

=RANDBETWEEN(bottom, top)

La parte inferior es el valor más bajo, y la superior el más alto.

Por ejemplo, imagina que quiero generar números enteros entre 10 y 20. Puedo utilizar la siguiente fórmula:

=RANDBETWEEN(10,20)

Generar números aleatorios con RANDBETWEEN() en Excel

Genera números aleatorios utilizando RANDBETWEEN(). Imagen del autor.

Observa que podrías obtener el mismo resultado con =INT(RAND()*(20-10)+10). Pero prefiero RANDBETWEEN() porque es una versión mejorada y más fácil de la función RAND() diseñada para este tipo de trabajo. Con RAND(), tengo que escribir una fórmula larga para obtener un número entero aleatorio entre dos valores. Pero con RANDBETWEEN(), puedo hacerlo en un solo paso.

Función RANDARRAY()

RANDARRAY() se introdujo en Excel 365. Devuelve una matriz de números aleatorios y nos permite especificar el número de valores, filas y columnas a rellenar -todo ello sin arrastrar la fórmula- y podemos elegir si devuelve decimales o números enteros.

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

Toma:

  • rows se refiere al número de filas que queremos rellenar.

  • columns se refiere al número de columnas que queremos rellenar.

  • min especifica el número más bajo.

  • max especifica el número más alto.

  • whole_number toma TRUE para los números enteros y FALSE (o deja en blanco) para los decimales.

Veamos cómo funciona en la vida real. Supongamos que quiero generar números decimales aleatorios en 4 columnas y 6 filas entre 10 y 20. En este caso, mi fórmula sería

=RANDARRAY(6,4,10,20)

Para los números enteros, la fórmula sería:

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

De esta forma, cada vez que actualizo la hoja de cálculo, se generan nuevos números.

Generar números aleatorios utilizando la función RANDARRAY() en Excel.

Genera números aleatorios utilizando la función RANDARRAY(). Imagen del autor.

Una comparación rápida de todas las funciones 

Aquí tienes una rápida comparación de las tres funciones:

Función RAND() RANDBETWEEN() RANDARRAY()
Tipo de salida Decimal Números enteros entre un rango especificado Decimal o entero
Opción de gama disponible No
Da múltiples valores No No
Versiones disponibles Todas las versiones (Excel 365 - 2000) Excel 365 - 2007 Excel 365 - 2021

Usos específicos del generador de números aleatorios de Excel 

Veamos algunos ejemplos reales de cómo y dónde podemos utilizar los generadores de números aleatorios.

Generar números aleatorios únicos

A veces, queremos generar números aleatorios que no se repitan. Aunque Excel no tiene una función directa para esto, podemos hacer una combinación de dos funciones:

  1. RAND() con RANK.EQ()

  2. RANDARRAY() con UNIQUE() 

Digamos que necesito 10 números aleatorios únicos. Primero, aplico RAND() en la celda A2 para generar números aleatorios y los arrastro a A10. Luego, en la celda B2, como quiero que estos números sean valores únicos, introduzco la siguiente fórmula:

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

Genera números aleatorios únicos utilizando RANK.EQ y RAND en Excel.

Genera números aleatorios únicos utilizando RANK.EQ(). Imagen del autor.

Otra forma es envolver la función RANDARRAY() dentro de la función UNIQUE(). Aquí genero 10 números aleatorios únicos entre 1 y 20 utilizando esta fórmula:

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

Generar números aleatorios con UNIQUE y RANDARRAY en Excel. 

Genera números aleatorios con UNIQUE() y RANDARRAY(). Imagen del autor.

Nota: Tanto UNIQUE() como RANDARRAY() sólo funcionan en Excel 365 y 2021. Sigue nuestro curso de Fundamentos de Excel para mantenerte al día.

Generar números con distribuciones específicas

Excel también proporciona una forma de generar números aleatorios siguiendo una distribución específica, como una distribución normal, que podría ser útil en algo como una simulación monte carlo. Para ello, puedes utilizar la función NORM.INV().

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

Toma: 

  • probability es un decimal aleatorio entre 0 y 1 (RAND()).

  • mean es el valor medio en torno al cual deben girar las cifras.

  • La desviación típica se refiere a cuánto fluctúan las cifras hacia arriba y hacia abajo respecto a la media.

Por ejemplo, quiero crear puntuaciones de examen aleatorias para una clase de alumnos y establecer la puntuación media en 75. La mayoría de los alumnos obtienen 10 puntos (lo que significa que sus puntuaciones oscilan entre 65 y 85). Así que apliqué la siguiente fórmula a todas las filas:

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

Generar una distribución normal utilizando la función NORM.INV en Excel.

Genera una distribución normal utilizando la función NORM.INV(). Imagen del autor.

Anonimizar y probar los datos

Incluso podemos utilizar números aleatorios para sustituir datos sensibles (como números de cuenta o de teléfono) con fines de prueba o de privacidad de datos.

Aquí tengo una lista de números de cuenta, y quiero anonimizar los cuatro primeros dígitos de los números de cuenta, así que los sustituyo por números aleatorios generales utilizando esta fórmula:

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

Oculta/anonimiza los datos sensibles con los números aleatorios con la función RANDBETWEEN en Excel.

Oculta los datos sensibles con números aleatorios. Imagen del autor.

Toma mejores decisiones

Puede parecer sorprendente, pero incluso podemos utilizar números aleatorios para tomar decisiones rápidas. Por ejemplo, si quiero elegir al azar un ganador de una larga lista, puedo extraer un nombre al azar del rango dado.

A continuación, tengo una lista de nombres en las celdas A2 a A10 para un sorteo, y quiero seleccionar un ganador. Ahora, para ello, introduzco la siguiente fórmula en la celda C2, y elige al azar un ganador:

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

Elige un nombre al azar de una lista utilizando la función RANDBETWEEN en Excel.

Elige un ganador al azar. Imagen del autor.

Cómo evitar el recálculo de números aleatorios

Un problema de los números aleatorios es que cambian cada vez que se actualiza la hoja. Si quieres mantenerlos fijos, conviértelos en valores estáticos. Hay dos formas de hacerlo:

  • Selecciona el rango de números aleatorios, pulsa Ctrl + C para copiarlos, luego haz clic con el botón derecho y elige Pegado especial > Valores.
  • Para dejar de recalcular los números de una celda, haz clic en la celda y, en la barra de fórmulas, pulsa F9.

Comprender los algoritmos de números aleatorios de Excel

En caso de que sientas curiosidad por lo que ocurre bajo el capó de las funciones de números aleatorios de Excel, hablaré un poco de ello.

Desde Excel 2010, Microsoft Excel utiliza el algoritmo Mersenne Twister para generar números aleatorios. Produce números aleatorios de alta calidad que superan muchas pruebas estadísticas. Una de sus versiones más utilizadas es la MT19937, basada en un tipo especial de número primo llamado primo de Mersenne.

Antes del Twister de Mersenne, se utilizaba el método del cuadrado medio. Eleva un número al cuadrado y trata el dígito central como un número aleatorio. Aunque en su momento fue una idea ingeniosa, desarrollada por el genio John von Neumann, se descubrió que producía patrones e incluso podía atascarse repitiendo los mismos números. Por eso lo sustituyó el Twister de Mersenne.

Reflexiones finales 

Hemos repasado distintas formas de generar números aleatorios en Excel, desde simples decimales con RAND() hasta números enteros con RANDBETWEEN() e incluso tablas completas de valores aleatorios con RANDARRAY().

Si quieres aprender más sobre el manejo de datos en Excel, consulta nuestros cursos Preparación de datos en Excel y Visualización de datos en ExcelAdemás, haz clic a continuación para acceder a nuestro curso de Fundamentos de Excel, que no requiere experiencia previa.

Avanza en tu carrera con Excel

Adquiere los conocimientos necesarios para sacar el máximo partido a Excel, sin necesidad de experiencia.

Empieza hoy gratis

Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Soy una estratega de contenidos a la que le encanta simplificar temas complejos. He ayudado a empresas como Splunk, Hackernoon y Tiiny Host a crear contenidos atractivos e informativos para su público.

Temas

Aprende Excel con DataCamp

Certificación disponible

curso

Preparación de datos en Excel

3 hr
42.6K
Comprender cómo preparar los datos de Excel mediante funciones lógicas, fórmulas anidadas, funciones de búsqueda y Tablas Dinámicas.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow