Tabla de contenido
Si está buscando algunas de las formas más fáciles y eficaces para selección aleatoria de una lista sin duplicados en Excel, entonces este artículo te resultará útil. Así pues, vamos a sumergirnos en el artículo principal.
Descargar el cuaderno de ejercicios
Selección aleatoria de una lista.xlsx5 Casos de selección aleatoria de una lista sin duplicados en Excel
Tenemos el siguiente conjunto de datos que contiene los registros de ventas de algunos productos. En este artículo, haremos una selección aleatoria de los productos sin duplicados utilizando lo siguiente 5 métodos.
Hemos utilizado Microsoft Excel 365 aquí, puede utilizar cualquier otra versión según su conveniencia.
Método-1: Uso de las funciones RAND, INDEX y RANK.EQ para la selección aleatoria sin duplicados
Aquí, haremos una selección aleatoria de 6 productos del total 9 productos en el Artículo aleatorio y para que esta selección no tenga duplicados generaremos unos números aleatorios en la columna Valor aleatorio Para realizar esta selección utilizaremos la columna Función RAND , Función INDEX y Función RANK.EQ (o Función RANK si prefiere utilizarlo).
Pasos :
➤ Para generar números únicos aleatorios escribe la siguiente función en la celda C4 .
=RAND()
➤ Prensa INTRODUCE y arrastre hacia abajo el Asa de llenado herramienta.
A continuación, obtendrá los siguientes números aleatorios y observará el efecto de la función volátil RAND al cambiar los números después de cada cálculo. Se puede ver que antes de aplicar el Autorrelleno el valor de la celda era 0.975686091 y después de aplicarlo el valor cambió a 0.082805271 .
De esta forma, esta función cambiará automáticamente esos valores aleatorios y afectará también a nuestra selección, para evitarlo puedes pegarlos como valores.
➤ Selecciona el rango de los valores aleatorios y pulsa CTRL+C .
➤ Después, haz clic con el botón derecho del ratón y selecciona la opción Valores opción de diferentes Opciones de pegado .
Finalmente, obtendrá los valores aleatorios fijos y ahora usándolos haremos nuestra selección aleatoria.
➤ Escribe la siguiente fórmula en la celda F4 .
=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)
Toma, $B$4:$B$12 es el rango de productos y $C$4:$C$12 es el rango de valores aleatorios.
RANK.EQ(C4,$C$4:$C$12)
se convierte enRANK.EQ(0.617433431,$C$4:$C$12)
→RANK.EQ
devuelve el rango del valor
0.617433431
entre otros valores del intervalo
$C$4:$C$12
.
Salida →
6
INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)
se convierte enINDEX($B$4:$B$12,6,1)
→ÍNDICE
devuelve el valor de la celda
B9
en la intersección de
Fila 6
y
Columna 1
en la gama
$B$4:$B$12
.
Salida →
Plátano
➤ Prensa INTRODUCE y arrastre hacia abajo el Asa de llenado herramienta.
Después, hicimos nuestra selección aleatoria de 6 productos entre los 9 productos evitando cualquier selección duplicada.
Más información: Cómo Generar una Cadena Aleatoria a partir de una Lista en Excel (5 Formas Adecuadas)
Método 2: Uso de las funciones UNIQUE, RANDARRAY, INDEX y RANK.EQ
En esta sección, vamos a utilizar la función Función ÚNICA , Función RANDARRAY , Función INDEX y Función RANK.EQ para seleccionar cualquiera de los 6 productos únicos de la lista de productos de forma aleatoria.
Pasos :
➤ Para tener los números únicos aleatorios escribe la siguiente función en la celda C4 .
=ÚNICO(RANDARRAY(9,1,1,9))
Toma, 9 es el número total de filas, 1 es el número de columnas, 1 es el número mínimo y 9 es el número máximo. Entonces RANDARRAY dará un array de este tamaño de números aleatorios y ÚNICO devolverá los números únicos de esta matriz.
➤ Después de pulsar INTRODUCE y arrastrando hacia abajo el Asa de llenado tendrá los siguientes números aleatorios en el campo Valor aleatorio columna.
En RANDARRAY es una función volátil, cambiará automáticamente esos valores aleatorios y afectará también a nuestra selección, para evitarlo los pegaremos como valores.
➤ Selecciona el rango de los valores aleatorios y pulsa CTRL+C .
➤ A continuación, haz clic con el botón derecho del ratón y selecciona la opción Valores opción de diferentes Opciones de pegado .
Después, obtendrás los valores aleatorios fijos, y ahora usándolos haremos nuestra selección aleatoria.
➤ Escribe la siguiente fórmula en la celda F4 .
=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)
Toma, $B$4:$B$12 es el rango de productos y $C$4:$C$12 es el rango de valores aleatorios.
RANK.EQ(C4,$C$4:$C$12)
se convierte enRANK.EQ(1.761880408,$C$4:$C$12)
→RANK.EQ
devuelve el rango del valor
1.761880408
entre otros valores del intervalo
$C$4:$C$12
.
Salida →
8
INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)
se convierte enINDEX($B$4:$B$12,8,1)
→ÍNDICE
devuelve el valor de la celda
B11
en la intersección de
Fila 8
y
Columna 1
en la gama
$B$4:$B$12
.
Salida →
Blackberry
➤ Prensa INTRODUCE y arrastre hacia abajo el Asa de llenado herramienta.
De este modo, hemos hecho nuestra selección aleatoria de los productos sin duplicados en el Artículo aleatorio columna.
En Función ÚNICA y el Función RANDARRAY solo están disponibles para las versiones de Microsoft Excel 365 y Excel 2021.
Más información: Cómo seleccionar una muestra aleatoria en Excel (4 métodos)
Método 3: Selección aleatoria sin duplicados con RAND, INDEX, RANK.EQ y COUNTIF
Aquí elegiremos 6 productos únicos cualesquiera de la lista del Producto columna al azar y luego reunirlos en la Artículo aleatorio con la ayuda de algunos números aleatorios. Para ello utilizaremos la combinación de la columna Función RAND , Función INDEX , Función RANK.EQ y Función COUNTIF .
Pasos :
➤ Para generar números únicos aleatorios aplica la siguiente función en las celdas del Valor aleatorio columna.
=RAND()
En RAND es una función volátil, cambiará automáticamente esos valores aleatorios y afectará también a nuestra selección, para evitarlo los pegaremos como valores.
➤ Selecciona el rango de los valores aleatorios y pulsa CTRL+C .
➤ Después, haz clic con el botón derecho del ratón y selecciona la opción Valores opción de diferentes Opciones de pegado .
Entonces, tendrás los valores aleatorios estables, y ahora usándolos puedes hacer nuestra selección aleatoria.
➤ Aplica la siguiente fórmula en la celda F4 .
=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1,1)
Toma, $B$4:$B$12 es el rango de productos y $C$4:$C$12 es el rango de valores aleatorios.
RANK.EQ(C4,$C$4:$C$12)
se convierte enRANK.EQ(0.440349449,$C$4:$C$12)
→RANK.EQ
devuelve el rango del valor
0.440349449
entre otros valores del intervalo
$C$4:$C$12
.
Salida →
6
COUNTIF($C$4:C4,C4
) se convierte enCOUNTIF($C$4:C4,0.440349449)
→cuenta el número de celdas que tienen el valor
440349449
en la gama
$C$4:C4
Salida →
1
RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1
se convierte en6+1-1 → 6
INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1,1)
se convierte enINDEX($B$4:$B$12,6,1)
→ÍNDICE
devuelve el valor de la celda
B9
en la intersección de
Fila 6
y
Columna 1
en la gama
$B$4:$B$12
.
Salida →
Plátano
➤ Prensa INTRODUCE y arrastre hacia abajo el Asa de llenado herramienta.
Finalmente, hicimos nuestra selección aleatoria de 6 productos entre los 9 productos evitando cualquier selección duplicada.
Más información: Selección aleatoria basada en criterios en Excel (3 casos)
Método 4: Combinación de funciones INDEX, SORTBY, RANDARRAY, ROWS y SEQUENCE
En esta sección, haremos nuestra selección aleatoria de los productos únicos sin necesidad de los números aleatorios con la ayuda de la función Función INDEX , Función SORTBY , Función RANDARRAY , Función ROWS y Función SEQUENCE .
Pasos :
➤ Utiliza la siguiente fórmula en la celda E4 .
=INDEX(SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))), SEQUENCE(6))
Toma, $B$4:$B$12 es el rango de productos .
FILAS(B4:B12)
→ devuelve el número total de filas de este rangoSalida → 9
RANDARRAY(FILAS(B4:B12))
se convierte enRANDARRAY(9)
→ genera 9 números al azarSalida →
{0.94536; 0.51383; 0.86142; 0.78644; 0.34980; 0.48125; 0.63824; 0.24971; 0.045946}
SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))
se convierte enSORTBY({"Naranja", "Manzana", "Sandía", "Nuez", "Jaca", "Plátano", "Cereza", "Zarzamora", "Tomate"}, {0,94536; 0,51383; 0,86142; 0,78644; 0,34980; 0,48125; 0,63824; 0,24971; 0,045946})
Salida →
{"Sandía", "Zarzamora", "Nuez", "Manzana", "Jaca", "Plátano", "Cereza", "Nuez", "Tomate", "Naranja"}
SECUENCIA(6)
→ da una serie de números de serie del 1 al 6Salida →
{1; 2; 3; 4; 5; 6}
INDEX(SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))), SEQUENCE(6))
se convierte enINDEX(SORTBY({"Sandía", "Zarzamora", "Nuez", "Manzana", "Jaca", "Plátano", "Cereza", "Nuez", "Tomate", "Naranja"}, {1; 2; 3; 4; 5; 6})
Salida →
{"Sandía", "Zarzamora", "Nuez", "Manzana", "Jaca", "Plátano"}
Tras pulsar INTRODUCE obtendrá lo siguiente 6 productos aleatorios en el Artículo aleatorio columna.
En Función SORTBY y el Función RANDARRAY solo están disponibles para las versiones de Microsoft Excel 365 y Excel 2021.
Más información: Excel VBA: Selección Aleatoria de una Lista (3 Ejemplos)
Método-5: Selección de una fila completa de la lista sin duplicados
También puede elegir toda la fila, lo que significa que obtendrá el valor de ventas correspondiente a cualquier producto elegido. Para realizar esta tarea, utilizaremos la combinación de los botones Función INDEX , Función SORTBY , Función RANDARRAY , Función ROWS y Función SEQUENCE .
Pasos :
➤ Escribe la siguiente fórmula en la celda E4 .
=INDEX(SORTBY(B4:C12, RANDARRAY(ROWS(B4:C12))), SEQUENCE(6), {1,2})
Toma, B4:C12 es el rango de productos y valores de venta .
FILAS(B4:C12)
→ devuelve el número total de filas de este rangoSalida → 9
RANDARRAY(FILAS(B4:B12))
se convierte enRANDARRAY(9)
→ genera 9 números al azarSalida →
{0.69680; 0.04111; 0.23072; 0.54573; 0.18970; 0.98737; 0.29843; 0.59124; 0.60439}
SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))
se convierte enSORTBY({"Naranja", 2721; "Manzana", 2172; "Sandía", 2958; "Nuez", 3405; "Jaca", 2154; "Plátano", 2580; "Cereza", 4316; "Zarzamora", 4815; "Tomate", 4792}, {0,94536; 0,51383; 0,86142; 0,78644; 0,34980; 0,48125; 0,63824; 0,24971; 0,045946})
Salida →
{"Tomate", 4792; "Nuez", 3405; "Zarzamora", 4815; "Plátano", 2580; "Manzana", 2172; "Cereza", 4316; "Naranja", 2721; "Jaca", 2154; "Sandía", 2958}
SECUENCIA(6)
→ da una serie de números de serie del 1 al 6Salida →
{1; 2; 3; 4; 5; 6}
INDEX(SORTBY(B4:C12, RANDARRAY(ROWS(B4:C12))), SEQUENCE(6), {1,2})
se convierte enINDEX(SORTBY({"Tomate", 4792; "Nuez", 3405; "Zarzamora", 4815; "Plátano", 2580; "Manzana", 2172; "Cereza", 4316; "Naranja", 2721; "Jaca", 2154; "Sandía", 2958}, {1; 2; 3; 4; 5; 6}, {1,2})
Salida →
{"Tomate", 4792; "Nuez", 3405; "Zarzamora", 4815; "Plátano", 2580; "Manzana", 2172; "Cereza", 4316}
Inmediatamente después de pulsar INTRODUCE obtendrá cualquiera de los 6 productos y sus correspondientes valores de venta.
Más información: Cómo Seleccionar Filas Aleatoriamente en Excel (2 Maneras)
Sección práctica
Para hacer prácticas por su cuenta hemos proporcionado un Práctica en una hoja denominada Práctica Por favor, hazlo tú mismo.
Conclusión
En este artículo, hemos tratado de mostrar las formas para la selección aleatoria de una lista sin duplicados en Excel fácilmente. Esperamos que le resulte útil. Si tiene alguna sugerencia o pregunta, no dude en compartirlas en la sección de comentarios.