Як генераваць выпадковыя лікі ў Excel без паўтораў

  • Падзяліцца Гэтым
Michael Brown

У гэтым артыкуле мы абмяркуем некалькі розных формул для рандомізацыі ў Excel без паўтарэння лікаў. Таксама мы пакажам вам універсальны генератар выпадковых лікаў, які можа ствараць спіс выпадковых лікаў, дат і радкоў без паўтораў.

Як вы напэўна ведаеце, Microsoft Excel мае некалькі функцый для генерацыі выпадковых лікаў. такія як RAND, RANDBETWEEN і RANDARRAY. Аднак няма ніякай гарантыі, што ў выніку любой функцыі не будзе дублікатаў.

У гэтым падручніку тлумачацца некалькі формул для стварэння спісу унікальных выпадковых лікаў. Звярніце ўвагу, што некаторыя формулы працуюць толькі ў апошняй версіі Excel 365 і 2021, а іншыя можна выкарыстоўваць у любой версіі Excel 2019, Excel 2016, Excel 2013 і больш ранніх.

    Атрымаць спіс унікальных выпадковых лікаў з прадусталяваным крокам

    Працуе толькі ў Excel 365 і Excel 2021, якія падтрымліваюць дынамічныя масівы.

    Калі ў вас апошняя версія Excel, самы просты спосаб атрымаць спіс унікальных выпадковых лікаў - аб'яднаць 3 новыя функцыі дынамічнага масіву: SORTBY, SEQUENCE і RANDARRAY:

    SORTBY(SEQUENCE( n), RANDARRAY( n))

    Дзе n гэта колькасць выпадковых значэнняў, якія вы хочаце атрымаць.

    Напрыклад, каб стварыць спіс з 5 выпадковых лікаў, выкарыстоўвайце 5 для n :

    =SORTBY(SEQUENCE(5), RANDARRAY(5))

    Увядзіце формулу ў самую верхнюю ячэйку, націсніце клавішу Enter, і вынікі аўтаматычна размесцяцца пазададзеная колькасць ячэек.

    Як вы бачыце на скрыншоце ніжэй, гэтая формула фактычна сартуе лічбы ад 1 да 5 у выпадковым парадку . Калі вам патрэбен класічны генератар выпадковых лікаў без паўтораў, азнаёмцеся з іншымі прыкладамі ніжэй.

    У прыведзенай вышэй формуле вы вызначаеце толькі колькасць радкоў для запаўнення. Для ўсіх астатніх аргументаў застаюцца значэнні па змаўчанні, што азначае, што спіс будзе пачынацца з 1 і павялічвацца на 1. Калі вы жадаеце іншы першы лік і прырост, усталюйце ўласныя значэнні для 3-га ( пачатак ) і 4-ы ( крок ) аргументы функцыі SEQUENCE.

    Напрыклад, каб пачаць са 100 і павялічыць на 10, выкарыстоўвайце наступную формулу:

    =SORTBY(SEQUENCE(5, , 100, 10), RANDARRAY(5))

    Як працуе гэтая формула:

    Працуючы знутры, вось што робіць формула:

    • Функцыя SEQUENCE стварае масіў паслядоўныя нумары на аснове вызначанага або па змаўчанні пачатковага значэння і памеру кроку нарошчвання. Гэтая паслядоўнасць пераходзіць у аргумент масіў функцыі САРТАВАЦЬ.
    • Функцыя RANDARRAY стварае масіў выпадковых лікаў таго ж памеру, што і паслядоўнасць (5 радкоў, 1 слупок у нашым выпадку). Мінімальнае і максімальнае значэнне не маюць асаблівага значэння, таму мы можам пакінуць іх па змаўчанні. Гэты масіў пераходзіць у аргумент by_array функцыі SORTBY.
    • Функцыя SORTBY сартуе паслядоўныя лікі, згенераваныя SEQUENCE, выкарыстоўваючы масіў выпадковых лікаў, створаныхRANDARRAY.

    Калі ласка, майце на ўвазе, што гэтая простая формула стварае спіс непаўтаральных выпадковых лікаў з зададзеным крокам . Каб абыйсці гэтае абмежаванне, выкарыстоўвайце пашыраную версію формулы, апісанай ніжэй.

    Стварыце спіс выпадковых лікаў без дублікатаў

    Працуе толькі ў Excel 365 і Excel 2021, якія падтрымліваюць дынаміку масівы.

    Каб згенераваць выпадковыя лікі ў Excel без дублікатаў, выкарыстоўвайце адну з прыведзеных ніжэй агульных формул.

    Выпадковыя цэлыя лікі :

    INDEX(UNIQUE( RANDARRAY( n ^2, 1, min , max , TRUE)), SEQUENCE( n ))

    Выпадковыя дзесятковыя знакі :

    INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , max , FALSE)), SEQUENCE( n ))

    Дзе:

    • N - колькасць значэнняў для стварэння.
    • Мін - мінімальнае значэнне.
    • Макс - максімальнае значэнне.

    Напрыклад, каб стварыць спіс з 5 выпадковых цэлых лікаў ад 1 да 100 без паўтораў, выкарыстоўвайце наступную формулу:

    =INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 100, TRUE)), SEQUENCE(5))

    Каб згенераваць 5 унікальных выпадковых дзесятковых лікаў , устаўце FALSE у апошні аргумент RANDARRAY або прапусціце гэта аргумент:

    =INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 100)), SEQUENCE(5))

    Як працуе гэтая формула:

    У fi На першы погляд формула можа выглядаць крыху складанай, але пры бліжэйшым разглядзе яе логіка вельмі простая:

    • Функцыя RANDARRAY стварае масіў выпадковых лікаў на аснове мінімальных і максімальных значэнняў, якія вы ўказваеце. Каб вызначыць, колькі значэнняўгенераваць, вы ўзводзіце патрэбную колькасць унікальных да ступені 2. Паколькі выніковы масіў можа мець невядома колькі дублікатаў, вам трэба прадаставіць дастатковы масіў значэнняў для UNIQUE на выбар. У гэтым прыкладзе нам трэба толькі 5 унікальных выпадковых лікаў, але мы загадваем RANDARRAY стварыць 25 (5^2).
    • Функцыя UNIQUE выдаляе ўсе дублікаты і "запраўляе" масіў без дублікатаў у INDEX.
    • З масіва, перададзенага UNIQUE, функцыя INDEX здабывае першыя значэнні n , як вызначана SEQUENCE (5 лікаў у нашым выпадку). Паколькі значэнні ўжо размешчаны ў выпадковым парадку, не мае значэння, якія з іх захаваюцца.

    Заўвага. На вельмі вялікіх масівах гэтая формула можа быць крыху павольнай. Напрыклад, каб атрымаць спіс з 1000 унікальных лікаў у якасці канчатковага выніку, RANDARRAY павінен быў бы стварыць унутраны масіў з 1000000 выпадковых лікаў (1000^2). У такіх сітуацыях замест узвядзення ў ступень вы можаце памножыць n , скажам, на 10 ці 20. Проста майце на ўвазе, што меншы масіў перадаецца ў функцыю UNIQUE (маленькі адносна патрэбнага ліку унікальных выпадковых значэнняў), тым большая верагоднасць таго, што не ўсе ячэйкі ў дыяпазоне разліву будуць запоўнены вынікамі.

    Стварыце дыяпазон непаўтаральных выпадковых лікаў у Excel

    Працуе толькі ў Excel 365 і Excel 2021, якія падтрымліваюць дынамічныя масівы.

    Для стварэння дыяпазону выпадковых лікаў безпаўтараецца, вы можаце выкарыстоўваць наступную формулу:

    INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , max )), SEQUENCE( радкі , слупкі ))

    Дзе:

    • n — колькасць вочак для запаўнення. Каб пазбегнуць вылічэнняў уручную, вы можаце падаць яго як (колькасць радкоў * колькасць слупкоў). Напрыклад, каб запоўніць 10 радкоў і 5 слупкоў, выкарыстоўвайце 50^2 або (10*5)^2.
    • Радкі - гэта колькасць радкоў для запаўнення.
    • Слупкі - гэта колькасць слупкоў для запаўнення.
    • Мін - самае нізкае значэнне.
    • Макс - самае высокае значэнне.

    Як вы маглі заўважыць, формула ў асноўным тая ж, што і ў папярэднім прыкладзе. Адзінае адрозненне заключаецца ў функцыі SEQUENCE, якая ў дадзеным выпадку вызначае колькасць радкоў і слупкоў.

    Напрыклад, каб запоўніць дыяпазон з 10 радкоў і 3 слупкоў унікальнымі выпадковымі лікамі ад 1 да 100, выкарыстоўвайце гэтая формула:

    =INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 100)), SEQUENCE(10, 3))

    І яна створыць масіў выпадковых дзесятковых знакаў без паўтаральных лікаў:

    Калі вам патрэбныя цэлыя лікі, усталюйце апошні аргумент RANDARRAY у TRUE :

    =INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 100, TRUE)), SEQUENCE(10,3))

    Як згенераваць унікальныя выпадковыя лікі ў Excel 2019, 2016 і больш ранніх версіях

    Паколькі ніякая версія, акрамя Excel 365 і 2021, не падтрымлівае дынамічныя масівы, ні адно з вышэйпералічанага рашэнні працуюць у больш ранніх версіях Excel. Аднак гэта не значыць, што рашэння наогул няма, вам проста трэба выканаць яшчэ некалькі крокаў:

    1. Стварыце спіс выпадковых лікаў. На падставе вашагапатрэбы, выкарыстоўвайце альбо:
      • функцыю RAND для стварэння выпадковых дзесятковых знакаў ад 0 да 1, або
      • функцыю RANDBETWEEN для атрымання выпадковых цэлых лікаў у дыяпазоне, які вы ўказваеце.

      Пераканайцеся, што згенеравалі больш значэнняў, чым вам насамрэч трэба, таму што некаторыя з іх будуць дублікатамі, і вы выдаліце ​​іх пазней.

      Для гэтага прыкладу мы ствараем спіс з 10 выпадковых цэлых лікаў ад 1 да 20 шляхам выкарыстоўваючы наступную формулу:

      =RANDBETWEEN(1,20)

      Каб увесці формулу ў некалькі ячэйак за адзін раз, вылучыце ўсе ячэйкі (A2:A15 у нашым прыкладзе), увядзіце формулу ў радок формул і націсніце Ctrl + Enter. Або вы можаце ўвесці формулу ў першую ячэйку, як звычайна, а затым перацягнуць яе ўніз да столькіх вочак, колькі неабходна.

      У любым выпадку, вынік будзе выглядаць прыкладна так:

      Як вы можаце заўважце, мы ўвялі формулу ў 14 вочак, хоць у рэшце рэшт нам спатрэбіцца толькі 10 унікальных выпадковых лікаў.

    2. Змяніць формулы на значэнні. Паколькі і RAND, і RANDBETWEEN пералічваюцца з кожнай зменай на аркушы, ваш спіс выпадковых лікаў будзе пастаянна змяняцца. Каб гэтага не адбылося, выкарыстоўвайце Спецыяльная ўстаўка > Значэнні для пераўтварэння формул у значэнні, як тлумачыцца ў раздзеле "Як спыніць пераразлік выпадковых лікаў".

      Каб пераканацца, што вы зрабілі ўсё правільна, выберыце любую лічбу і паглядзіце на радок формул. Цяпер ён павінен адлюстроўваць значэнне, а не формулу:

    3. Выдаліць дублікаты. Каб гэта былозроблена, выберыце ўсе лічбы, перайдзіце на ўкладку Даныя > Група інструментаў для даных і націсніце Выдаліць дублікаты . У дыялогавым акне Выдаліць дублікаты , якое з'явіцца, проста націсніце OK, нічога не змяняючы. Для падрабязных крокаў, калі ласка, глядзіце Як выдаліць дублікаты ў Excel.

    Гатова! Усе дублікаты зніклі, і цяпер вы можаце выдаліць лішнія лічбы.

    Парада. Замест убудаванага інструмента Excel вы можаце выкарыстоўваць наш удасканалены сродак для выдалення дублікатаў для Excel.

    Як спыніць змяненне выпадковых лікаў

    Усе функцыі рандомізацыі ў Excel, уключаючы RAND, RANDBETWEEN і RANDARRAY зменлівыя, што азначае, што яны пераразлічваюцца кожны раз, калі электронная табліца змяняецца. У выніку з кожным змяненнем ствараюцца новыя выпадковыя значэнні. Каб прадухіліць аўтаматычнае стварэнне новых нумароў, выкарыстоўвайце Спецыяльную ўстаўку > Функцыя значэнняў для замены формул статычнымі значэннямі. Вось як:

    1. Вылучыце ўсе ячэйкі з вашай выпадковай формулай і націсніце Ctrl + C, каб скапіяваць іх.
    2. Пстрыкніце правай кнопкай мышы выбраны дыяпазон і націсніце Спецыяльная ўстаўка > Значэнні . Акрамя таго, вы можаце націснуць Shift + F10, а затым V , які з'яўляецца ярлыком для гэтай опцыі.

    Для падрабязных крокаў, калі ласка, глядзіце Як змяніць формулы на значэнні ў Excel.

    Генератар выпадковых лікаў для Excel без паўтораў

    Карыстальнікам нашага Ultimate Suite насамрэч не патрэбна ні адно з вышэйзгаданых рашэнняў, таму штояны ўжо маюць універсальны генератар выпадковых значэнняў у сваім Excel. Гэты інструмент можа лёгка стварыць спіс непаўтаральных цэлых лікаў, дзесятковых лікаў, дат і унікальных пароляў. Вось як:

    1. На ўкладцы Ablebits Tools націсніце Randomize > Random Generator .
    2. Выберыце дыяпазон для запаўнення выпадковымі лікамі.
    3. На панэлі Генератар выпадковых значэнняў зрабіце наступнае:
      • Выберыце патрэбны тып значэння: цэлы лік, рэчаісны лік, дата, лагічны , карыстальніцкі спіс або радок (ідэальна падыходзіць для стварэння надзейных унікальных пароляў!).
      • Усталюйце значэнні Ад і Да .
      • Выберыце Унікальныя значэнні сцяжок.
      • Націсніце Стварыць .

    Вось і ўсё! Выбраны дыяпазон адразу запаўняецца выпадковымі лікамі, якія не паўтараюцца:

    Калі вам цікава паспрабаваць гэты інструмент і вывучыць іншыя захапляльныя функцыі, якія ўваходзяць у наш Ultimate Suite, вы можаце спампаваць пробную версію.

    Вось як рандомізаваць лікі ў Excel без дублікатаў. Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

    Практычны сшытак для спампоўкі

    Стварэнне унікальных выпадковых лікаў у Excel (файл .xlsx)

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.