Turinys
Konkretiems tikslams (pvz., telefono numeriui, loterijai, statistinei atrankai) turime generuoti atsitiktinius skaičius be pasikartojimų. Tačiau, jei naudosite bendrąsias "Excel" formules, galite gauti pasikartojančius atsitiktinius skaičius. Šiame straipsnyje aptarsiu 9 metodus kaip atsitiktinių skaičių generatorių "Excel" be pasikartojimų kartu su tinkamu paaiškinimu.
Atsisiųsti praktikos sąsiuvinį
Atsitiktinių skaičių generatoriai be pasikartojimų.xlsx
9 atsitiktinių skaičių generatoriaus diegimo "Excel" be pasikartojimų metodai
Pirmuosiuose 4 metoduose matysite, kaip naudojant naujai išleistas masyvų funkcijas, įdiegtas "Excel 365", generuojami atsitiktiniai skaičiai be pasikartojimų. Tačiau kiti metodai tinka visoms "Excel" versijoms, ypač tiems, kurie naudoja ankstesnes "Excel" versijas. Apibendrinant, 9 metodus galite naudoti kaip atsitiktinių skaičių generatorius programoje "Excel be pasikartojimų.
Peržiūrėkime metodus.
1. Funkcijos RANDARRAY naudojimas
Pirmiausia pamatysime, kaip naudoti RANDARRAY funkcija atsitiktiniams skaičiams generuoti.
Svetainė RANDARRAY Funkcija, įdiegta "Excel 365", pateikia atsitiktinių skaičių sąrašą masyvo pavidalu. Ir mes galime naudoti šią funkciją atsitiktiniams skaičiams be pasikartojančių reikšmių gauti.
Pavyzdžiui, noriu sukurti 20 atsitiktinių skaičių be pasikartojimų nuo 1 iki 200.
Tokiomis sąlygomis formulė bus tokia.
=RANDARRAY(10,2,1,200,TRUE)
Čia, 10 yra eilučių skaičius, 2 yra stulpelių skaičius, 1 yra mažiausia vertė, 200 yra didžiausia vertė, ir galiausiai, TRUE skirtas sveikiesiems skaičiams.
Tačiau šis metodas bus naudingas, jei norite gauti kelis skaičius iš didelio skaičių intervalo (pvz., sugeneruoti 10/20 skaičių nuo 1 iki 200/500). Priešingu atveju bus sukurtos pasikartojančios reikšmės.
Skaityti daugiau: "Excel" formulė atsitiktiniam skaičiui generuoti (5 pavyzdžiai)
2. Funkcijų UNIQUE & RANDARRAY naudojimas
Antra, naudosime taikymą UNIKALUS funkciją, taip pat RANDARRAY funkcija.
Svetainė UNIKALUS funkcija, kurią galima naudoti "Excel 365", "Excel 2021" versijose, grąžina unikalių reikšmių sąrašą iš tam tikro duomenų rinkinio arba ląstelių intervalo. Taigi, galime panaudoti dvi funkcijas, kad gautume atsitiktinius skaičius be pasikartojimų.
Bendra formulė bus tokia.
=UNIKALUS(RANDARRAY(10,2,1,100,TRUE))
Čia, 10 yra eilučių skaičius, 2 yra stulpelių skaičius, 1 yra mažiausia vertė, 200 yra didžiausia vertė, ir galiausiai, TRUE skirtas sveikiesiems skaičiams.
⧬ Pirmiau pateiktoje formulėje naudojau RANDARRAY(10,2,1,1,100,TRUE) kaip masyvą, kad būtų sugeneruota 20 atsitiktinių skaičių nuo 1 iki 100. Vėliau UNIKALUS funkcija iš sugeneruotų atsitiktinių skaičių grąžins unikalias vertes.
3. SORTBY & amp; SEQUENCE funkcijų taikymas generuojant atsitiktinį skaičių be pasikartojimų
Trečia, galime naudoti kai kurių dinaminių masyvų funkcijų derinį.
Svetainė SEKVENCIJA funkcija, prieinama tik "Excel 365" ir "Excel 2021" versijoms, sukuria nuosekliųjų skaičių sąrašą (masyvą).
Tarkime, norėdami gauti skaičių nuo 1 iki 10 sąrašą, turite naudoti šią formulę.
=EKVENCIJA(10)
Čia, 10 yra eilučių skaičius.
Toliau SORTBY funkcija surūšiuoja reikšmių masyvą pagal kitą reikšmių masyvą didėjančia arba mažėjančia tvarka. SEKVENCIJA & RANDARRAY funkciją, kad sukurtumėte 10 atsitiktinių skaičių be pasikartojimų.
=SORTBY(SEKA(10),RANDARRAY(10))
⧬ Aiškindami formulę, galime pasakyti, kad RANDARRAY(10) sukuriamas 10 atsitiktinių skaičių sąrašas. SEKVENCIJA(10) sintaksė sukuria 10 skaičių sąrašą (iš eilės). Ir SEKVENCIJA(10) ir RANDARRAY(10) naudojami kaip masyvas argumentas ir by_array argumentas SORTBY Kadangi norime surūšiuoti nuoseklų skaičių sąrašą atsitiktine tvarka.
Skaityti daugiau: Kaip generuoti atsitiktinį skaičių naudojant "Excel VBA" (4 pavyzdžiai)
4. INDEX funkcijos naudojimas kaip atsitiktinių skaičių generatoriaus be pasikartojimų
Jei norime sudaryti atsitiktinių skaičių sąrašą be pasikartojimų, tada INDEKSAS funkciją kartu su anksčiau aptarta RANDARRAY , SEKVENCIJA & UNIKALUS funkcija bus labai veiksminga. Be to, galime sukurti 4 tipų atsitiktinius skaičius.
4.1. Atsitiktinių sveikųjų skaičių kūrimas
Kai reikia sugeneruoti 10 atsitiktinių sveikųjų skaičių nuo 1 iki 100 be pasikartojimų, naudokite šią formulę.
=INDEX(UNIQUE(RANDARRAY(10, 1, 1, 1, 100, TRUE)), SEQUENCE(10))
⧬ Aiškindami formulę, galime pasakyti, kad SEKVENCIJA(10) sukuria 10 nuosekliųjų numerių, RANDARRAY(10, 1, 1, 1, 100, TRUE) gaunama 10 atsitiktinių sveikųjų skaičių nuo 1 iki 100. Kadangi TRUE naudojamas sveikiesiems skaičiams generuoti. Vėliau UNIKALUS funkcija iš sugeneruotų skaičių pašalina pasikartojančias reikšmes. Galiausiai funkcija INDEKSAS funkcija grąžina 10 atsitiktinių sveikųjų skaičių, kaip nurodyta SEKVENCIJA Tokiu atveju išvestis UNIKALUS funkcija naudojama kaip masyvas.
4.2. Atsitiktinių dešimtainių skaičių kūrimas
Jei norite sugeneruoti 10 atsitiktinių dešimtainių skaičių be pasikartojimų, galite naudoti šią formulę.
=INDEX(UNIQUE(RANDARRAY(10, 1, 1, 1, 100, FALSE)), SEQUENCE(10))
Čia, 10 yra eilučių skaičius, 2 yra stulpelių skaičius, 1 yra mažiausia vertė, 100 yra didžiausia vertė, ir galiausiai, FALSE skirtas dešimtainių skaičių generavimui.
4.3. Sveikųjų skaičių diapazono sudarymas
Panašiai galite generuoti atsitiktinių sveikųjų skaičių intervalą naudodami šią formulę.
=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 1, 200, TRUE)), SEQUENCE(10,2))
Čia, 20 yra eilučių skaičius, 1 yra stulpelių skaičius, 1 yra mažiausia vertė, 200 yra didžiausia vertė, ir galiausiai, TRUE skirtas sveikiesiems skaičiams generuoti.
4.4. Atsitiktinių dešimtainių skaičių diapazono sudarymas
Atsitiktinių dešimtainių skaičių nuo 1 iki 100 intervalui generuoti naudokite šią formulę.
=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 1, 100)), SEQUENCE(10, 2))
Čia, 20 yra eilučių skaičius, 1 yra stulpelių skaičius, 1 yra mažiausia vertė, 200 yra didžiausia vertė, ir galiausiai, FALSE skirtas dešimtainių skaičių generavimui.
Skaityti daugiau: Atsitiktinio skaičiaus generavimas "Excel" programoje su dešimtainėmis dalimis (3 metodai)
5. RAND ir RANDBETWEEN funkcijos atsitiktiniam skaičiui generuoti
Svetainė RAND funkcija generuoja skaičių nuo 0 iki 1. Laimei, yra labai maža tikimybė, kad naudojant funkciją RAND Funkcija. Jei 100000 kartų viršysite naudojimo ribą, galite gauti pasikartojančias reikšmes.
Jei norite generuoti unikalius dešimtainius skaičius, naudokite šią formulę
=RAND()
Be to, RANDBETWEEN grąžina sveikuosius skaičius tarp dviejų pateiktų skaičių.
Pavyzdžiui, jei norite gauti sveikuosius skaičius nuo 1 iki 100, galite naudoti toliau pateiktą formulę.
=RANDBETWEEN(1,100)
Čia, 1 yra apačioje argumentas ir 100 yra viršuje argumentas.
Deja, yra didelė pasikartojančių verčių tikimybė naudojant RANDBETWEEN Tokiu atveju galite naudoti funkciją Pašalinti dublikatus parinktį iš Duomenys skirtukas Duomenų įrankiai juostoje pasirinkus ląstelių intervalą.
Skaityti daugiau: Kaip "Excel" programoje generuoti atsitiktinius skaičius be pasikartojimų (7 būdai)
Panašūs skaitiniai
- Atsitiktinių skaičių nuo 0 iki 1 generavimas "Excel" programoje (2 metodai)
- Atsitiktinių 5 skaitmenų skaičių generatorius "Excel" programoje (7 pavyzdžiai)
- Atsitiktinių 4 skaitmenų skaičių generatorius "Excel" programoje (8 pavyzdžiai)
- Atsitiktinio skaičiaus generavimas iš sąrašo "Excel" programoje (4 būdai)
- Atsitiktinių skaičių generatorius tarp "Excel" diapazono (8 pavyzdžiai)
6. RAND & amp; RANK funkcijų taikymas kaip atsitiktinių skaičių generatoriaus
Be to, galite naudoti RANKAS funkcija, kuri grąžina santykinį skaičiaus dydį pagal pateiktą skaičių sąrašą. Prieš tai sukurkite atsitiktinių dešimtainių skaičių sąrašą naudodami RAND funkcija.
=RANK(B5,$B$5:$B$15)
Čia, B5 yra pradinis dešimtainiųjų skaičių langelis, o B5:B15 yra dešimtainiųjų skaičių langelių diapazonas.
Skaityti daugiau: "Excel VBA": atsitiktinių skaičių generatorius be pasikartojimų (4 pavyzdžiai)
7. RANK.EQ ir COUNTIF funkcijų derinio naudojimas
Tarkime, norite generuoti atsitiktinius skaičius be pasikartojimų nuo 10 iki 50.
Tokiu atveju galite naudoti derinį RANK.EQ & COUNTIF funkcijas, kad būtų galima generuoti atsitiktinius skaičius be pasikartojimų. Prieš tai sukurkite skaičių nuo 10 iki 50 sąrašą naudodami RANDBETWEEN funkcija.
Dabar naudokite toliau pateiktą formulę -
=9+RANK.EQ(B5, $B$5:$B$15) + COUNTIF($B$5:B5, B5) - 1
Čia, B5 yra pradinė atsitiktinių skaičių ląstelė, o B5:B15 yra dešimtainiųjų skaičių langelių diapazonas.
⧬ Aiškindami formulę galime pasakyti, kad COUNTIF funkcija skaičiuoja kiekvieną sąraše esantį atsitiktinį skaičių. RANK.EQ grąžina kiekvieno atsitiktinio skaičiaus santykinę padėtį (rangą), o galiausiai reikia pridėti 9 nes norime generuoti skaičių nuo 10.
8. LARGE & amp; MATCH funkcijos kaip atsitiktinių skaičių generatorius programoje "Excel
Be to, atsitiktinius sveikuosius skaičius be pasikartojimų galime gauti naudodami kombinaciją DIDELIS ir MATCH funkcijos. DIDELIS funkcija grąžina k-ąją didžiausią reikšmę duotame ląstelių intervale arba duomenų rinkinyje.
=LARGE($B$5:$B$15,ROW(B1))
Čia, $B$5:$B$15 yra atsitiktinių dešimtainių skaičių, kurie randami naudojant RAND funkcija, ROW(B1) nurodo 1 eilutę.
Toliau turime rasti sukurtos didžiausios reikšmės padėtį pagal šią formulę.
=MATCH(C5,$B$5:$B$15,0)
Čia, C5 yra didžiausių skaičių pradinis langelis, $B$5:$B$15 yra atsitiktinių dešimtainių skaičių ląstelės intervalas, ir galiausiai, 0 skirta gauti tikslią atitiktį.
9. "Analysis Toolpak" kaip atsitiktinių skaičių generatorius programoje "Excel
Galiausiai, jei reikia generuoti atsitiktinius skaičius be pasikartojimų, užuot naudoję "Excel" formules, galite naudoti šią formulę Papildiniai "Excel".
Naudojant Papildiniai , atlikite toliau nurodytus veiksmus.
⇰ Eiti į Failas > Parinktys .
⇰ Spustelėkite Papildiniai ir pasirinkite "Excel" papildiniai iš išskleidžiamojo sąrašo ir pasirinkite parinktį Eikite į .
⇰ Tada pamatysite šį dialogo langą ir pažymėkite langelį prieš Analizės įrankių paketas ir paspauskite GERAI .
⇰ Dabar pasirinkite Duomenų analizė parinktį iš Duomenys skirtukas Analizė juosta.
⇰ Tada pasirinkite parinktį Atsitiktinių skaičių generavimas ir paspauskite GERAI .
⇰ Iš karto pamatysite šį dialogo langą.
⇰ Tada pasirinkite parinktį pagal pageidaujamą išvestį.
⇰ Pavyzdžiui, pasirinkau Kintamųjų skaičius ir Atsitiktinių skaičių skaičius kaip 4 & 10 atitinkamai, kad būtų sudarytas numerių, turinčių 10 eilučių ir 4 stulpeliai.
⇰ Dar svarbiau yra tai, kad turime pasirinkti Platinimas kaip Uniforma nes norime išvengti pasikartojančių verčių.
⇰ Vėliau, Nuo 10 ir 30 reiškia, kad noriu rasti skaičių, patenkantį į intervalą.
⇰ Galiausiai reikia pasirinkti Išėjimo diapazonas
Atlikę visas užduotis, gausite tokią išvestį.
Skaityti daugiau: Atsitiktinių skaičių generatorius su "Excel" duomenų analizės įrankiu ir funkcijomis
Kai kurios dažniausiai pasitaikančios klaidos
Tačiau naudodami pirmiau pateiktą formulę kaip atsitiktinių skaičių generatorių "Excel" programoje be pasikartojimų galite susidurti su šiomis klaidomis.
Klaidų pavadinimas | Kada įvyksta |
---|---|
#CALC! | Jei UNIKALUS funkcija negali išskirti unikalių reikšmių. |
#SPILL! | Jei išsiliejimo diapazone yra bet kokia reikšmė, kurioje UNIKALUS funkcija grąžins sąrašą. |
#VALUE! | Svetainė RANDARRAY funkcija atsiranda tada, kai mažiausia reikšmė yra didesnė už didžiausią reikšmę. |
Išvada
Štai kaip galite naudoti pirmiau nurodytus metodus kaip atsitiktinių skaičių generatorių "Excel" programoje be pasikartojimų. Dabar pasirinkite bet kurį metodą pagal savo pageidavimus. Tikiuosi, kad šis straipsnis palengvins jūsų "Excel" kelionę.