Skip to main content

Randomizar una lista en Excel (Tutorial paso a paso fácil)

Author: Amanda Li Last Modified: 2025-06-04

Realizar una ordenación aleatoria es una forma rápida y sencilla de asegurarse de que todos los casos tengan la misma probabilidad de aparecer. En este tutorial, hablaremos sobre cómo randomizar o mezclar fácilmente una lista en Excel en unos pocos pasos.

A screenshot illustrating the randomization result in Excel

Video: Randomizar una lista en Excel


Randomizar una lista con funciones

En esta sección, te enseñaré cómo mezclar una lista utilizando las funciones integradas de Excel.

Randomizar una lista con la función RAND

Los usuarios de cualquier versión de Excel pueden ordenar aleatoriamente su conjunto de datos original utilizando la función RAND junto con la ayuda de la función Ordenar; por favor, sigue los siguientes pasos.

Paso 1: Introducir la fórmula RAND

Selecciona la celda al lado de la celda superior de la lista que deseas randomizar, introduce la siguiente fórmula RAND y presiona "Enter".

=RAND()

RAND formula in a cell

Paso 2: Rellenar la fórmula RAND en otras celdas

Haz doble clic en el controlador de relleno (el pequeño cuadrado verde en la esquina inferior derecha) de la celda de la fórmula para aplicar la fórmula a las celdas inferiores.

RAND formula applied to other cells

Paso 3: Ordenar los resultados de RAND para mezclar la lista

1. Selecciona "B2:B8", la lista que contiene la fórmula RAND.

2. Haz clic en "Ordenar y filtrar" > "Ordenar de menor a mayor" en el grupo "Edición" de la pestaña "Inicio".

Sort Smallest to Largest option on the ribbon

3. En el cuadro de diálogo emergente, selecciona "Expandir la selección" y luego haz clic en "Ordenar".

Selecting the 'Expand the selection' option

Resultado

¡Ya está todo listo! La lista ha sido randomizada como se muestra a continuación.

The list is randomized

Nota: La función RAND de Excel es volátil: recalcula su resultado en cada cambio de la hoja de cálculo. Por lo tanto, los números en la columna B cambiaron instantáneamente después de ordenar. Si quieres volver a mezclar la lista, repite el paso 3 anterior. De lo contrario, simplemente puedes eliminar la columna con la función RAND.
Randomizar una lista con las funciones RANDARRAY, SORTBY y ROWS (Excel 365/2021)

Si eres usuario de versiones más recientes de Excel, por ejemplo, Excel para Microsoft 365, Excel 2021 o Excel para la Web, las fórmulas RANDARRAY, SORTBY y ROWS te ayudarán a obtener rápidamente una lista mezclada en la posición que especifiques.

Paso 1: Introducir la fórmula RANDARRAY, SORTBY y ROWS

Selecciona una celda en blanco donde deseas obtener el resultado randomizado, escribe la siguiente fórmula (ten en cuenta que debes cambiar "A2:A8" en la fórmula a continuación por la lista original que deseas randomizar) y presiona "Enter".

=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))

Nota:
  • Excel devuelve un error "#¡DERRAME!" cuando el rango de desbordamiento (B2:B8 en este caso) no está en blanco.
  • La fórmula es volátil: recalcula su resultado en cada cambio de la hoja de cálculo. Si deseas volver a mezclar la lista, presiona "F9".
  • El resultado de la fórmula (lista randomizada) no es editable. Si necesitas editar la lista randomizada, sigue el siguiente paso.

(Opcional) Paso 2: Copiar y pegar el resultado de la fórmula para hacerlo editable

Si solo quieres ver un resultado aleatorio, puedes omitir este paso. Si deseas editar la lista mezclada aleatoriamente, deberías copiar el resultado de la fórmula y pegar solo los valores:

1. Selecciona el resultado de la fórmula y presiona "Ctrl" + "C" para copiarlo.

2. Haz clic derecho en una celda donde pegarás el resultado copiado. (También puedes pegar el valor en su ubicación original).

3. Selecciona la opción "Pegar Valores" desde el menú contextual.

Resultado

Ahora obtendrás una lista mezclada y editable como se muestra a continuación.


Randomizar una lista en Excel con Kutools en 2 clics

Si estás cansado de usar fórmulas y prefieres utilizar la ayuda de un complemento, la función Ordenar/Seleccionar Rango Aleatoriamente de Kutools para Excel puede ayudarte a realizar una ordenación aleatoria mucho más fácilmente con más opciones. Por favor, sigue estos pasos:

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

Primero, selecciona la lista que deseas mezclar. Luego selecciona "Kutools" > "Rango" > "Ordenar/Seleccionar Rango Aleatoriamente". En el cuadro de diálogo emergente "Ordenar/Seleccionar Rango Aleatoriamente", selecciona "Filas completas" y luego haz clic en "Aceptar".

Select the Entire rows option in the dialog to shuffle the list

Nota:

Randomizar una lista con VBA

Si prefieres randomizar una lista con el método VBA, por favor, sigue estos pasos.

Nota: No puedes deshacer después de ejecutar una macro VBA. Por lo tanto, haz una copia de la lista en otro lugar en caso de que necesites los datos originales en el futuro.

Paso 1: Seleccionar la lista que deseas mezclar

The list to be shuffled is selected

Paso 2: Copiar el código VBA en la ventana Módulo

1. Presiona "Ctrl" + "F11" para abrir el editor VBA, y luego haz clic en "Insertar" > "Módulo" para abrir una ventana de código de Módulo.

Click Insert > Module in the VBA editor

2. Copia y pega el siguiente código VBA en la ventana de Módulo abierta.

Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
    xI = WorksheetFunction.RandBetween(1, xF)
    xWSh.Range("A1").Value = xRg.Item(xI)
    xRg.Item(xI) = xRg.Item(xF)
    xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

Paso 3: Ejecutar el código VBA

En la ventana de código, presiona "F5" o haz clic en el Run button botón para ejecutar este código.

The run button in the code window

Resultado

The list is shuffled

Nota: Si deseas randomizar la lista nuevamente, repite el paso 3 anterior.