Selección aleatoria da lista sen duplicados en Excel (5 casos)

  • Comparte Isto
Hugh West

Se estás a buscar algunhas das formas máis sinxelas e eficaces de selección aleatoria dunha lista sen duplicados en Excel, entón atoparás este artigo útil. Entón, imos mergullo no artigo principal.

Descargar libro de traballo

Selección aleatoria a partir dunha lista.xlsx

5 casos para a selección aleatoria de Lista sen duplicados en Excel

Aquí temos o seguinte conxunto de datos que contén os rexistros de vendas dalgúns produtos. Neste artigo, faremos unha selección aleatoria dos produtos sen duplicados utilizando os seguintes 5 métodos.

Utilizamos Microsoft Excel 365 aquí, podes usar calquera outra versión segundo a túa conveniencia.

Método 1: Usando as funcións RAND, INDEX e RANK.EQ para a selección aleatoria sen duplicados

Aquí , faremos unha selección aleatoria de 6 produtos do total de 9 produtos na columna Elemento aleatorio e, para que esta selección se libre de duplicados, xeraremos algúns números aleatorios na columna Valor aleatorio . Para facer esta selección usaremos a función RAND , función INDEX e función RANK.EQ (ou función RANK se o prefire para usalo).

Pasos :

➤ Para xerar números únicos aleatorios escriba a seguinte función na cela C4 .

=RAND()

➤ Preme ENTER e arrastra cara abaixoa ferramenta Fill Handle .

Despois diso, obterás os seguintes números aleatorios e notarás o efecto da función volátil RAND ao cambiar os números despois de cada cálculo. Podes ver que antes de aplicar a función Enchemento automático o valor da cela era 0,9 in the range 6091 e despois de aplicalo o valor cambiou a 0,082805271 .

Deste xeito, esta función cambiará automaticamente eses valores aleatorios e afectará tamén á nosa selección, para evitar isto pode pegalos como valores.

➤ Seleccione o intervalo do valores aleatorios e prema CTRL+C .

➤ Despois diso, faga clic co botón dereito do rato e seleccione a opción Valores de diferentes Opcións de pegado .

Finalmente, obterás os valores aleatorios fixos e agora usándoos faremos a nosa selección aleatoria.

➤ Escriba a seguinte fórmula na cela F4 .

=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)

Aquí, $B$4:$B$12 está a gama de produtos e $C$4:$C$12 é o intervalo de valores aleatorios.

  • RANK.EQ(C4,$C$4:$C$12) convértese en

    RANK.EQ(0.617433431,$C$4:$C$12) RANK.EQ returns the rank of the value 0.617433431 among other values in the range $C$4:$C$12 .

    Saída → 6

  • INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1) convértese en

    INDEX($B$4:$B$12,6,1) INDEX returns the value of cell B9 53 57 Row 6 and Column 1 in the range $B$4:$B$12 .

    Saída → Banana

➤ Prema ENTRAR e arrastre cara abaixo a ferramenta Recheo de controlador .

Despois, nósfixemos a nosa selección aleatoria de 6 produtos entre os 9 produtos evitando calquera selección duplicada.

Ler máis: Como xerar unha cadea aleatoria a partir dunha lista en Excel (5 xeitos adecuados)

Método 2: Usando as funcións UNIQUE, RANDARRAY, INDEX e RANK.EQ

Nesta sección, imos usar a función UNIQUE , función RANDARRAY , función INDEX e función RANK.EQ para seleccionar calquera dos 6 produtos únicos da lista de produtos ao azar.

Pasos :

➤ Para ter os números únicos aleatorios escriba a seguinte función na cela C4 .

=UNIQUE(RANDARRAY(9,1,1,9))

Aquí, 9 é o número total de filas, 1 é o número de columnas, 1 é o número mínimo e 9 é o número máximo. Entón RANDARRAY dará unha matriz deste tamaño de números aleatorios e UNIQUE devolverá os números únicos desta matriz.

➤ Despois de premer ENTER e arrastrar cara abaixo a ferramenta Enchemento de controlador , terá os seguintes números aleatorios na columna Valor aleatorio .

Como RANDARRAY é unha función volátil, cambiará automaticamente eses valores aleatorios e tamén afectará á nosa selección, para evitar isto pegarémolos como valores.

➤ Seleccione o intervalo dos valores aleatorios e prema CTRL+C .

➤ A continuación, prema co botón dereito do rato e seleccionea opción Valores de diferentes Opcións de pegado .

Despois, obterá os valores aleatorios fixos, e agora usámolos fará a nosa selección aleatoria.

➤ Escriba a seguinte fórmula na cela F4 .

=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1)

Aquí, $B$4:$B$12 é o intervalo de produtos e $C$4:$C$12 é o intervalo de valores aleatorios.

  • RANK.EQ(C4,$C$4:$C$12) convértese en

    RANK.EQ(1.761880408,$C$4:$C$12) RANK.EQ returns the rank of the value 1.761880408 among other values in the range $C$4:$C$12 .

    Saída → 8

  • INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12),1) convértese en

    INDEX($B$4:$B$12,8,1) INDEX returns the value of cell B11 at the intersection of Row 8 and Column 1 in the range $B$4:$B$12 .

    Saída → Blackberry

➤ Prema ENTER e arrastre cara abaixo a ferramenta Recheo de controlador .

Deste xeito, fixemos a nosa selección aleatoria dos produtos sen duplicados na columna Elemento aleatorio .

A función ÚNICA e a función RANDARRAY só están dispoñibles para as versións de Microsoft Excel 365 e Excel at the intersection of .

Re anuncio Máis: Como seleccionar unha mostra aleatoria en Excel (4 métodos)

Método 3: selección aleatoria sen duplicados usando RAND, INDEX, RANK.EQ e COUNTIF

Aquí escolleremos 6 produtos únicos da lista da columna Produto ao azar e despois reunirémolos na columna Elemento aleatorio coa axuda dalgúns números aleatorios . Para iso usaremos a combinación dea función RAND , función INDEX , función RANK.EQ e función COUNTIF .

Pasos :

➤ Para xerar números únicos aleatorios, aplique a seguinte función nas celas da columna Valor aleatorio .

=RAND()

Como RAND é unha función volátil, cambiará automaticamente eses valores aleatorios e afectará tamén á nosa selección, para para evitar isto, pegarémolos como valores.

➤ Seleccione o intervalo dos valores aleatorios e prema CTRL+C .

➤ Despois diso, prema co botón dereito do rato no seu rato e seleccione a opción Valores de diferentes Opcións de pegado .

Entón, terá os valores aleatorios estables e agora usándoas podes facer a nosa selección aleatoria.

➤ Aplica a seguinte fórmula na cela F4 .

=INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1,1)

Aquí , $B$4:$B$12 é o intervalo de produtos e $C$4:$C$12 é o intervalo de valores aleatorios.

  • RANK.EQ(C4,$C$4:$C$12) convértese en

    RANK.EQ(0.440349449,$C$4:$C$12) RANK.EQ returns the rank of the value 0.440349449 951 3 $C$4:$C$12 .

    Saída → 6

  • COUNTIF($C$4:C4,C4 ) convértese en

    COUNTIF($C$4:C4,0.440349449) counts the number of cells having the value 440349449 in the range $C$4:C4

    Saída → 1

  • RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1 pasa a ser

    6+1-1 → 6

  • INDEX($B$4:$B$12,RANK.EQ(C4,$C$4:$C$12)+COUNTIF($C$4:C4,C4)-1,1) convértese en

    INDEX($B$4:$B$12,6,1) INDEX returns the value of cell B9 at the intersection of Row 6 and Column 1 in the range $B$4:$B$12 .

    Saída → Banana

➤ Prema ENTER e arrastre cara abaixo o RecheoManexa a ferramenta.

Ao final, fixemos a nosa selección aleatoria de 6 produtos entre os 9 produtos evitando calquera duplicación selección.

Ler máis: Selección aleatoria en base a criterios en Excel (3 casos)

Método -4: Usando a combinación de funcións INDEX, SORTBY, RANDARRAY, ROWS e SEQUENCE

Nesta sección, faremos a nosa selección aleatoria dos produtos únicos sen necesidade de números aleatorios coa axuda do Función INDEX , Función SORTBY , Función RANDARRAY , Función ROWS e función SEQUENCE .

Pasos :

➤ Use a seguinte fórmula na cela E4 .

=INDEX(SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))), SEQUENCE(6))

Aquí, $B$4:$B$12 está a gama de produtos .

  • ROWS(B4:B12) devolve os números totais de filas deste intervalo

    Saída → 9

  • RANDARRAY(ROWS(B4:B12)) pasa a ser

    RANDARRAY(9) xera 9 números aleatorios

    Saída → {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))) convértese en

    SORTBY({“Orange”, “Apple”, “Watermelon”, “Walnut”, “Jackfruit”, “Banana”, “Cherry”, “Blackberry”, “Tomato”}, {0.94536; 0.51383; 0.86142; 0.78644; 0.34980; 0.48125; 0.63824; 0.24971; 0.045946})

    Saída → {“Watermelon”, “Blackberry”, “Walnut”, “Apple”, “Jackfruit”, “Banana”, “Cherry”, “Walnut”, “Tomato”, “Orange”}

  • SEQUENCE(6) da un intervalo de números de serie do 1 ao 6

    Saída → {1; 2; 3; 4; 5; 6}

  • INDEX(SORTBY(B4:B12, RANDARRAY(ROWS(B4:B12))), SEQUENCE(6)) convértese en

    INDEX(SORTBY({“Watermelon”, “Blackberry”, “Walnut”, “Apple”, “Jackfruit”, “Banana”, “Cherry”, “Walnut”, “Tomato”, “Orange”}, {1; 2; 3; 4; 5; 6})

    Saída → {“Watermelon”, “Blackberry”, “Walnut”, “Apple”, “Jackfruit”, “Banana”}

Despois de premer ENTER , obterá o seguinte 6 produtos aleatorios na columna Elemento aleatorio .

A función SORTBY e a RANDARRAYa función só están dispoñibles para as versións de Microsoft Excel 365 e Excel at the intersection of .

Ler máis: Excel VBA: selección aleatoria da lista (3 exemplos)

Método 5: selección dunha fila enteira da lista sen duplicados

Tamén pode escoller para toda a fila, o que significa que aquí obterá o valor de vendas correspondente para calquera produto escollido. Para facer esta tarefa utilizaremos a combinación da función INDEX , función SORTBY , función RANDARRAY , función ROWS e Función SECUENCIA .

Pasos :

➤ Anote a seguinte fórmula na cela E4 .

=INDEX(SORTBY(B4:C12, RANDARRAY(ROWS(B4:C12))), SEQUENCE(6), {1,2})

Aquí, B4:C12 está a gama de produtos e valores de vendas .

  • ROWS(B4:C12) devolve os números totais de filas deste intervalo

    Saída → 9

  • RANDARRAY(ROWS(B4:B12)) convértese en

    RANDARRAY(9) xera 9 números aleatorios

    Saída → {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))) convértese en

    SORTBY({“Orange”, 2721; “Apple”, 2172; “Watermelon”, 2958;“Walnut”, 3405; “Jackfruit”, 2154; “Banana”, 2580; “Cherry”, 4316; “Blackberry”, 4815; “Tomato”, 4792}, {0.94536; 0.51383; 0.86142; 0.78644; 0.34980; 0.48125; 0.63824; 0.24971; 0.045946})

    Saída → {“Tomato”, 4792; “Walnut”, 3405; “Blackberry”, 4815; “Banana”, 2580;  “Apple”, 2172; “Cherry”, 4316; “Orange”, 2721; “Jackfruit”, 2154; “Watermelon”, 2958}

  • SEQUENCE(6) da un intervalo de números de serie do 1 ao 6

    Saída → {1; 2; 3; 4; 5; 6}

  • INDEX(SORTBY(B4:C12, RANDARRAY(ROWS(B4:C12))), SEQUENCE(6), {1,2}) convértese en

    INDEX(SORTBY({“Tomato”, 4792; “Walnut”, 3405; “Blackberry”, 4815; “Banana”, 2580;  “Apple”, 2172; “Cherry”, 4316; “Orange”, 2721; “Jackfruit”, 2154; “Watermelon”, 2958}, {1; 2; 3; 4; 5; 6}, {1,2})

    Saída → {“Tomato”, 4792; “Walnut”, 3405; “Blackberry”, 4815; “Banana”, 2580;  “Apple”, 2172; “Cherry”, 4316}

Inmediatamente despois de premer ENTER , obterás calquera dos 6 produtos aleatorios e os seus valores de vendas correspondentes.

Ler máis: Como ver aleatoriamente lec Filas en Excel (2 xeitos)

Sección de práctica

Para practicar vostede mesmo, proporcionamos unha sección Práctica como a continuación nunha folla chamada Práctica . Faino por ti mesmo.

Conclusión

Neste artigo intentamos mostrar facilmente as formas de selección aleatoria dunha lista sen duplicados en Excel . Espero que che resulte útil. Se tes algunha suxestión ou pregunta, non dubides en compartilas na sección de comentarios.

Hugh West é un adestrador e analista de Excel altamente experimentado con máis de 10 anos de experiencia na industria. É Licenciado en Contabilidade e Finanzas e Máster en Administración de Empresas. Hugh ten unha paixón polo ensino e desenvolveu un enfoque docente único que é fácil de seguir e comprender. O seu coñecemento experto de Excel axudou a miles de estudantes e profesionais de todo o mundo a mellorar as súas habilidades e a destacar nas súas carreiras. A través do seu blog, Hugh comparte os seus coñecementos co mundo, ofrecendo titoriais de Excel gratuítos e formación en liña para axudar ás persoas e ás empresas a alcanzar todo o seu potencial.