Funkcija Excel RANDARRAY - hiter način za generiranje naključnih številk

  • Deliti To
Michael Brown

V učbeniku je prikazano, kako ustvariti naključna števila, naključno razvrstiti seznam, pridobiti naključno izbiro in naključno dodeliti podatke skupinam. Vse to z novo funkcijo dinamičnega polja - RANDARRAY.

Kot verjetno veste, ima Microsoft Excel že nekaj naključnih funkcij - RAND in RANDBETWEEN. Zakaj je smiselno uvesti še eno? Na kratko, ker je veliko zmogljivejša in lahko nadomesti obe starejši funkciji. Poleg določanja lastnih največjih in najmanjših vrednosti lahko določite, koliko vrstic in stolpcev naj se zapolni ter ali naj se izdelajo naključna decimalna števila aliUporablja se skupaj z drugimi funkcijami, lahko RANDARRAY celo premeša podatke in izbere naključni vzorec.

    Funkcija Excel RANDARRAY

    Funkcija RANDARRAY v Excelu vrne polje naključnih števil med poljubnima številoma, ki ju določite.

    To je ena od šestih novih funkcij dinamičnega polja, ki so bile uvedene v programu Microsoft Excel 365. Rezultat je dinamično polje, ki se samodejno razširi v določeno število vrstic in stolpcev.

    Funkcija ima naslednjo sintakso. Upoštevajte, da so vsi argumenti neobvezni:

    RANDARRAY([vrstice], [stolpci], [min], [max], [celo_število])

    Kje:

    Vrstice (neobvezno) - določa, koliko vrstic naj se zapolni. Če je izpuščen, je privzeta vrednost 1 vrstica.

    Stolpci (neobvezno) - določa, koliko stolpcev naj se zapolni. Če je izpuščen, je privzeta vrednost 1 stolpec.

    Min (neobvezno) - najmanjše naključno število, ki se izdela. Če ni navedeno, se uporabi privzeta vrednost 0.

    Max (neobvezno) - največje naključno število, ki se ustvari. Če ni navedeno, se uporabi privzeta vrednost 1.

    Celotno_število (neobvezno) - določa, katere vrste vrednosti se vrnejo:

    • PRAVDA - cela števila
    • FALSE ali izpuščeno (privzeto) - decimalna števila

    Funkcija RANDARRAY - kaj si je treba zapomniti

    Za učinkovito ustvarjanje naključnih številk v delovnih listih programa Excel morate upoštevati 6 pomembnih točk:

    • Funkcija RANDARRAY je na voljo samo v Excelu za Microsoft 365 in Excelu 2021. V Excelu 2019, Excelu 2016 in prejšnjih različicah funkcija RANDARRAY ni na voljo.
    • Če je polje, ki ga vrne funkcija RANDARRAY, končni rezultat (izpisan v celici in ne posredovan drugi funkciji), Excel samodejno ustvari dinamično območje prelivanja in ga napolni z naključnimi številkami. Zato se prepričajte, da imate dovolj praznih celic spodaj in/ali desno od celice, v katero vnesete formulo, sicer se bo pojavila napaka #SPILL.
    • Če ni naveden noben od argumentov, formula RANDARRAY() vrne eno decimalno število med 0 in 1.
    • Če je vrstice ali/in stolpci so argumenti predstavljeni z decimalnimi števili, bodo okrnjeni na celo število pred decimalno vejico (npr. 5,9 bo obravnavano kot 5).
    • Če je min ali max argument ni določen, je privzeta vrednost RANDARRAY 0 oziroma 1.
    • Tako kot druge naključne funkcije je tudi Excelova RANDARRAY hlapljivi kar pomeni, da ob vsakem izračunu delovnega lista ustvari nov seznam naključnih vrednosti. Da bi to preprečili, lahko formule nadomestite z vrednostmi z uporabo Excelove funkcije Posebna prilepitev > Vrednosti funkcija.

    Osnovna formula Excel RANDARRAY

    Zdaj pa vam bom pokazal naključno formulo programa Excel v njeni najpreprostejši obliki.

    Recimo, da želite s poljubnimi naključnimi številkami zapolniti območje, sestavljeno iz 5 vrstic in 3 stolpcev. Če želite to narediti, nastavite prva dva argumenta na ta način:

    • Vrstice je 5, saj želimo rezultate v 5 vrsticah.
    • Stolpci je 3, saj želimo rezultate v treh stolpcih.

    Vse druge argumente pustimo na privzetih vrednostih in dobimo naslednjo formulo:

    =RANDARRAY(5, 3)

    Vnesite ga v zgornjo levo celico ciljnega območja (v našem primeru A2), pritisnite tipko Enter in rezultati se bodo razporedili v določeno število vrstic in stolpcev.

    Kot lahko vidite na zgornji sliki zaslona, ta osnovna formula RANDARRAY zapolni območje z naključnimi decimalnimi števili od 0 do 1. Če bi raje dobili cela števila znotraj določenega območja, konfigurirajte zadnje tri argumente, kot je prikazano v nadaljnjih primerih.

    Kako naključno v Excelu - primeri formule RANDARRAY

    V nadaljevanju boste našli nekaj naprednih formul, ki pokrivajo tipične scenarije naključnega izbiranja v Excelu.

    Generiranje naključnih števil med dvema številoma

    Če želite ustvariti seznam naključnih števil znotraj določenega razpona, v 3. argument vpišite najmanjšo vrednost, v 4. argument pa največje število. 5. argument nastavite na TRUE oziroma FALSE, odvisno od tega, ali potrebujete cela ali decimalna števila.

    Kot primer, napolnimo območje 6 vrstic in 4 stolpcev z naključnimi celimi števili od 1 do 100. V ta namen določimo naslednje argumente funkcije RANDARRAY:

    • Vrstice je 6, saj želimo rezultate v 6 vrsticah.
    • Stolpci je 4, saj želimo rezultate prikazati v 4 stolpcih.
    • Min je 1, kar je najmanjša vrednost, ki jo želimo doseči.
    • Max je 100, kar je največja vrednost, ki jo je mogoče ustvariti.
    • Celotno_število je TRUE, ker potrebujemo cela števila.

    Če argumente združimo, dobimo tole formulo:

    =RANDARRAY(6, 4, 1, 100, TRUE)

    Rezultat je naslednji:

    Ustvari naključni datum med dvema datumoma

    Iščete generator naključnih datumov v Excelu? Funkcija RANDARRAY je preprosta rešitev! Vse, kar morate storiti, je, da v vnaprej določene celice vnesete zgodnejši datum (datum 1) in poznejši datum (datum 2), nato pa se na te celice sklicujete v svoji formuli:

    RANDARRAY(vrstice, stolpci, datum1 , datum2 , TRUE)

    V tem primeru smo s to formulo ustvarili seznam naključnih datumov med datumoma v D1 in D2:

    =RANDARRAY(10, 1, D1, D2, TRUE)

    Seveda vam nič ne preprečuje, da v formulo neposredno vnesete datume min in max, če to želite. Pazite le, da jih vnesete v obliki, ki jo Excel razume:

    =RANDARRAY(10, 1, "1/1/2020", "12/31/2020", TRUE)

    Da bi preprečili napake, lahko za vnos datumov uporabite funkcijo DATA:

    =RANDARRAY(10, 1, DATE(2020,1,1), DATE(2020,12,31), TRUE)

    Opomba: Excel interno shranjuje datume kot zaporedne številke, zato bodo rezultati formule najverjetneje prikazani kot številke. Če želite rezultate prikazati pravilno, uporabite Datum format v vse celice v območju razlitja.

    Ustvarjanje naključnih delovnih dni v Excelu

    Če želite ustvariti naključne delovne dni, v prvi argument funkcije WORKDAY vstavite funkcijo RANDARRAY, kot sledi:

    WORKDAY(RANDARRAY(vrstice, stolpci, datum1 , datum2 , TRUE), 1)

    Funkcija RANDARRAY bo ustvarila polje naključnih začetnih datumov, ki jim bo funkcija WORKDAY dodala 1 delovni dan in zagotovila, da so vsi vrnjeni datumi delovni dnevi.

    Z datumom 1 v D1 in datumom 2 v D2 je tukaj formula za pripravo seznama 10 dni v tednu:

    =DELOVNI DAN(RANDARRAY(10, 1, D1, D2, TRUE), 1)

    Tako kot v prejšnjem primeru ne pozabite oblikovati območja razlitja kot Datum da bodo rezultati prikazani pravilno.

    Kako ustvariti naključne številke brez podvajanja

    Čeprav sodobni Excel ponuja 6 novih dinamičnih funkcij matrik, žal še vedno ni vgrajene funkcije za vračanje naključnih števil brez podvajanj.

    Če želite izdelati svoj edinstven generator naključnih številk v Excelu boste morali povezati več funkcij, kot je prikazano spodaj.

    Naključna cela števila :

    INDEX(UNIQUE(RANDARRAY( n *2, 1, min , max , TRUE)), ZAPOREDJE( n ))

    Naključna decimalna števila :

    INDEX(UNIQUE(RANDARRAY( n *2, 1, min , max , FALSE)), ZAPOREDJE( n ))

    Kje:

    • N je število vrednosti, ki jih želite ustvariti.
    • Min je najnižja vrednost.
    • Max je najvišja vrednost.

    Če želite na primer dobiti 10 naključnih celih števil brez dvojnikov, uporabite to formulo:

    =INDEX(UNIQUE(RANDARRAY(20, 1, 1, 100, TRUE)), SEQUENCE(10))

    Ustvarjanje seznama 10 edinstvenih naključna decimalna števila , v zadnjem argumentu funkcije RANDARRAY spremenite TRUE v FALSE ali pa ta argument preprosto izpustite:

    =INDEX(UNIQUE(RANDARRAY(20, 1, 1, 100, FALSE)), SEQUENCE(10))

    Nasveti in opombe:

    • Podrobno razlago formule najdete v članku Kako ustvariti naključne številke v Excelu brez podvajanja.
    • V Excelu 2019 in starejših programih funkcija RANDARRAY ni na voljo. Namesto tega si oglejte to rešitev.

    Kako naključno razvrščati v Excelu

    Če želite v Excelu premešati podatke, uporabite polje RANDARRAY za polje "razvrsti po" ( by_array Funkcija ROWS bo preštela število vrstic v vašem podatkovnem nizu in določila, koliko naključnih številk je treba ustvariti:

    SORTBY( podatki , RANDARRAY(VRSTICE( podatki )))

    S tem pristopom lahko naključno razvrščanje seznama v Excelu, ne glede na to, ali vsebuje številke, datume ali besedilne vnose:

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

    Prav tako lahko premešanje vrstic brez mešanja podatkov:

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

    Kako pridobiti naključni izbor v Excelu

    Za pridobivanje naključnega vzorca s seznama uporabite naslednjo splošno formulo:

    INDEX( podatki , RANDARRAY( n , 1, 1, ROWS( podatki ), TRUE))

    Kje: n je število naključnih vnosov, ki jih želite pridobiti.

    Če želite na primer naključno izbrati 3 imena s seznama v A2:A10, uporabite to formulo:

    =INDEX(A2:A10, RANDARRAY(3, 1, 1, 1, ROWS(A2:A10), TRUE))

    Ali pa vnesite želeno velikost vzorca v neko celico, na primer C2, in se sklicujte na to celico:

    =INDEX(A2:A10, RANDARRAY(C2, 1, 1, ROWS(A2:A10), TRUE))

    Kako deluje ta formula:

    Jedro te formule je funkcija RANDARRAY, ki ustvari naključno polje celih števil, pri čemer vrednost v C2 določa, koliko vrednosti se bo ustvarilo. Najmanjše število je trdno zakodirano (1), največje število pa ustreza številu vrstic v vašem podatkovnem nizu, ki ga vrne funkcija ROWS.

    Polje naključnih celih števil se neposredno prenese v vrstica_številka argument funkcije INDEX, ki določa položaje elementov, ki jih je treba vrniti. Za vzorec na zgornji sliki zaslona je to:

    =INDEX(A2:A10, {8;7;4})

    Nasvet: Pri izbiri velikega vzorca iz majhnega nabora podatkov obstaja verjetnost, da bo naključni izbor vseboval več kot en primer istega vnosa, saj ni nobenega zagotovila, da bo RANDARRAY ustvaril samo edinstvena števila. Če želite to preprečiti, uporabite različico te formule, ki ne vsebuje dvojnikov.

    Kako izbrati naključne vrstice v Excelu

    Če vaš podatkovni niz vsebuje več kot en stolpec, določite, katere stolpce želite vključiti v vzorec. V ta namen za zadnji argument navedite konstanto polja ( številka_stolpca ) funkcije INDEX, kot sledi:

    =INDEX(A2:B10, RANDARRAY(D2, 1, 1, ROWS(A2:A10), TRUE), {1,2})

    Pri čemer so A2:B10 izvorni podatki, D2 pa je velikost vzorca.

    Tako bo naš naključni izbor vseboval dva stolpca podatkov:

    Nasvet: Tako kot v prejšnjem primeru lahko ta formula vrne podvojene zapise. Če želite zagotoviti, da se v vašem vzorcu ne bo ponovil noben zapis, uporabite nekoliko drugačen pristop, opisan v poglavju Kako izbrati naključne vrstice brez podvojitev.

    Kako naključno dodeliti številke in besedilo v programu Excel

    Za naključno dodeljevanje v Excelu uporabite funkcijo RANDBETWEEN skupaj s funkcijo CHOOSE na ta način:

    IZBRATI(RANDARRAY(VRSTICE( podatki ), 1, 1, n , TRUE), vrednost1 , vrednost2 ,...)

    Kje:

    • Podatki je območje izvornih podatkov, ki mu želite dodeliti naključne vrednosti.
    • N je skupno število vrednosti, ki jih je treba dodeliti.
    • Vrednost1 , vrednost2 , vrednost3 itd. so vrednosti, ki se dodelijo naključno.

    Če želite na primer udeležencem v A2:A13 dodeliti številke od 1 do 3, uporabite to formulo:

    =CHOOSE(RANDARRAY(ROWS(A2:A13), 1, 1, 3, TRUE), 1, 2, 3)

    Zaradi priročnosti lahko vrednosti, ki jih želite dodeliti, vnesete v ločene celice, na primer od D2 do D4, in se na te celice sklicujete v formuli (posamezno, ne kot na razpon):

    =CHOOSE(RANDARRAY(ROWS(A2:A13), 1, 1, 3, TRUE), D2, D3, D4)

    Tako boste lahko z isto formulo naključno dodelili poljubne številke, črke, besedilo, datume in čase:

    Opomba: Funkcija RANDARRAY bo ob vsaki spremembi v delovnem listu še naprej ustvarjala nove naključne vrednosti, zato bodo vsakič dodeljene nove vrednosti. Če želite "popraviti" dodeljene vrednosti, uporabite funkcije Paste Special> Values, da formule nadomestite z izračunanimi vrednostmi.

    Kako deluje ta formula

    V središču te rešitve je spet funkcija RANDARRAY, ki ustvari polje naključnih celih števil na podlagi najmanjšega in največjega števila, ki ga določite (v našem primeru od 1 do 3). Funkcija ROWS pove funkciji RANDARRAY, koliko naključnih števil naj ustvari. To polje gre v polje index_num argumenta funkcije CHOOSE. Na primer:

    =CHOOSE({1;2;1;2;3;2;3;3;1;3;1;3;1;2}, D2, D3, D4)

    Index_num je argument, ki določa položaje vrednosti, ki se vrnejo. In ker so položaji naključni, so vrednosti v D2:D4 izbrane v naključnem vrstnem redu. Ja, tako preprosto je :)

    Kako podatke naključno razporediti v skupine

    Kadar je vaša naloga naključno razporediti udeležence v skupine, zgornja formula morda ne bo primerna, saj ne nadzoruje, kolikokrat bo izbrana določena skupina. Na primer, v skupino A je lahko razporejenih 5 oseb, v skupino C pa le 2 osebi. Za naključno razporeditev enakomerno , tako da ima vsaka skupina enako število udeležencev, potrebujete drugačno rešitev.

    Najprej s to formulo ustvarite seznam naključnih številk:

    =RANDARRAY(VRSTICE(A2:A13))

    Pri čemer so A2:A13 vaši izvorni podatki.

    Skupine (ali kar koli drugega) dodelite z uporabo te splošne formule:

    INDEX( values_to_assign , ZAOKROŽITEV(RANG( first_random_number , random_numbers_range )/ n , 0))

    Kje: n je velikost skupine, tj. kolikokrat je treba dodeliti posamezno vrednost.

    Če želite na primer naključno razporediti ljudi v skupine iz seznama E2:E5, tako da ima vsaka skupina 3 udeležence, uporabite to formulo:

    =INDEX($E$2:$E$5, ROUNDUP(RANK(B2,$B$2:$B$13)/3,0))

    Upoštevajte, da gre za navadno formulo (ne za formulo dinamičnega polja!), zato morate območja zakleniti z absolutnimi referencami kot v zgornji formuli.

    V zgornjo celico (v našem primeru C2) vnesite formulo in jo nato povlecite navzdol v poljubno število celic. Rezultat bo podoben temu:

    Ne pozabite, da je funkcija RANDARRAY nestalna. Če želite preprečiti generiranje novih naključnih vrednosti vsakič, ko nekaj spremenite v delovnem listu, zamenjajte formule z njihovimi vrednostmi z uporabo Posebna prilepitev funkcija.

    Kako deluje ta formula:

    Formula RANDARRAY v pomožnem stolpcu je zelo preprosta in je skoraj ni treba razlagati, zato se osredotočimo na formulo v stolpcu C.

    =INDEX($E$2:$E$5, ROUNDUP(RANK(B2,$B$2:$B$13)/3,0))

    Funkcija RANK razvrsti vrednost v B2 glede na niz naključnih števil v B2:B13. Rezultat je število med 1 in skupnim številom udeležencev (v našem primeru 12).

    Rang se deli z velikostjo skupine (v našem primeru 3), funkcija ROUNDUP pa ga zaokroži navzgor na najbližje celo število. Rezultat te operacije je število med 1 in skupnim številom skupin (v tem primeru 4).

    Celoštevilčno število se prenese v vrstica_številka argumenta funkcije INDEX in jo prisili, da vrne vrednost iz ustrezne vrstice v območju E2:E5, ki predstavlja dodeljeno skupino.

    Funkcija Excel RANDARRAY ne deluje

    Kadar formula RANDARRAY vrne napako, so to najbolj očitni razlogi za preverjanje:

    #SPILL napaka

    Tako kot pri vseh drugih dinamičnih funkcijah polja tudi napaka #SPILL! najpogosteje pomeni, da v predvidenem območju za razlivanje ni dovolj prostora za prikaz vseh rezultatov. Počistite vse celice v tem območju in formula se bo samodejno preračunala. Za več informacij glejte Excelova napaka #SPILL - vzroki in popravki.

    #VALUE napaka

    V teh okoliščinah se lahko pojavi napaka #VALUE!:

    • Če je max je manjša od vrednosti min vrednost.
    • Če je kateri koli od argumentov neštevilčen.

    #NAME napaka

    V večini primerov napaka #NAME! pomeni eno od naslednjih stvari:

    • Ime funkcije je napačno zapisano.
    • Funkcija ni na voljo v vaši različici programa Excel.

    #CALC! napaka

    Napaka #CALC! se pojavi, če vrstice ali stolpci je manjša od 1 ali se nanaša na prazno celico.

    To je način za izdelavo generatorja naključnih števil v Excelu z novo funkcijo RANDARRAY. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!

    Praktični delovni zvezek za prenos

    Primeri formule RANDARRAY (.xlsx datoteka)

    Michael Brown je predan tehnološki navdušenec s strastjo do poenostavljanja kompleksnih procesov z uporabo programskih orodij. Z več kot desetletnimi izkušnjami v tehnološki industriji je svoje veščine izpopolnil v Microsoft Excelu in Outlooku ter Google Preglednicah in Dokumentih. Michaelov blog je namenjen deljenju svojega znanja in strokovnega znanja z drugimi ter ponuja preproste nasvete in vadnice za izboljšanje produktivnosti in učinkovitosti. Ne glede na to, ali ste izkušen strokovnjak ali začetnik, Michaelov blog ponuja dragocene vpoglede in praktične nasvete, kako kar najbolje izkoristiti ta osnovna programska orodja.