Excel VBA: генератар выпадковых лікаў без дублікатаў (4 прыклады)

  • Падзяліцца Гэтым
Hugh West

Гэты артыкул ілюструе 4 прыклады генератара выпадковых лікаў без дублікатаў з выкарыстаннем VBA ў Excel. Тут мы будзем выкарыстоўваць убудаваную ў Excel функцыю Rnd, каб наладзіць наш код. Давайце паглыбімся ў прыклады, каб вывучыць метады генерацыі унікальных выпадковых лікаў.

Спампаваць практычны сшытак

Спампуйце гэты практычны сшытак, каб займацца, пакуль вы чытаеце гэты артыкул.

Генератар выпадковых лікаў без дублікатаў.xlsm

4 прыклады генератара выпадковых лікаў без дублікатаў у Excel VBA

Напісаць код у рэдактары Visual Basic

Каб генераваць выпадковыя лікі без дублікатаў , нам трэба адкрыць і напісаць VBA код у рэдактары Visual Basic. Выканайце крокі каб адкрыць рэдактар ​​Visual Basic і напісаць там код.

  • Перайдзіце да Укладка Распрацоўшчык на стужцы Excel .
  • Націсніце опцыю Visual Basic.

  • У акне Visual Basic для прыкладанняў пстрыкніце выпадальнае меню Уставіць , каб выбраць Новы модуль варыянт.

Цяпер змясціце свой код у рэдактар ​​візуальнага кода і націсніце F5 каб запусціць гэта.

1. Выкарыстанне функцыі VBA Rnd для генерацыі выпадковага ліку без дублікатаў

Функцыя Rnd выкарыстоўваецца ў Excel VBA для генераваць выпадковыя лікі якія паміж 0 і 1 эксклюзіўна.

Заданне : Стварыць 10 выпадковых лікаў паміж 0 і 1 у ячэйках A1:A10.

Код : Устаўце наступны код у рэдактар ​​Visual Basic і націсніце F5 каб запусціць гэта.

1381

Вывад : На здымку вышэй паказаны 10 унікальных выпадковых лікаў у дыяпазоне 0 і 1.

Тлумачэнне кода:

У гэтым кодзе мы выкарыстоўвалі функцыю Rnd каб уставіць выпадковыя лікі ў дыяпазон вочак A1:A10 . Перш чым уставіць новы нумар , мы выкарыстоўвалі цыкл Do While , каб шукаць нумар у зададзены дыяпазон ячэек (A1:A10) незалежна ад таго, яна ўжо існуе ці не . Каб кожны раз правяраць існаванне лічбы ў дыяпазоне вочак , мы сканфігуравалі код з дапамогай функцыі COUNTIF , гэтая функцыя правярае новы выпадковы лік у спісе ўжо існуючых нумароў перад устаўкай.

Чытаць далей : Формула Excel для стварэння выпадковага ліку (5 прыкладаў)

2. Генератар выпадковых лікаў для вызначанай ніжняй і верхняй мяжы без дублікатаў

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

(верхняя мяжа – ніжняя мяжа + 1) * Rnd + ніжняя мяжа

2.1 Выпадковы Генератар лікаў - дзесятковы

Заданне : Стварыць 10 выпадковых лікаў паміж 10 і 20 у ячэйкі A1:A10.

Код : Устаўце наступны код у рэдактар ​​Visual Basic і націсніце F5 каб запусціць гэта.

1935

Вывад : На здымку вышэй паказаны 10 унікальных выпадковых лікаў у дыяпазоне ад 1 да 10.

2.2 Генератар выпадковых лікаў - цэлае

На гэтай ілюстрацыі мы будзем выкарыстоўваць Функцыя VBA Int для выдалення дробавай часткі з выпадковых лікаў .

Заданне : Стварыце 20 выпадковых цэлых лікаў паміж 1 і 20 у ячэйках A1:B10.

Код : Устаўце наступны код у рэдактар ​​Visual Basic і націсніце F5 каб запусціць гэта.

6757

Выхад : На здымку вышэй паказаны 20 унікальных выпадковых цэлых лікаў у дыяпазоне ад 1 да 20.

Больш падрабязна: Генератар выпадковых лікаў у Excel без паўтораў (9 метадаў)

Падобныя паказанні

  • Генератар выпадковых лікаў з інструментам аналізу даных і функцыямі ў Excel
  • Як Стварэнне выпадковых даных у Excel (9Лёгкія метады)
  • Генератар выпадковых 5 лічбаў у Excel (7 прыкладаў)
  • Генератар выпадковых 4 лічбаў у Excel (8 прыкладаў)
  • Стварыць выпадковы лік са спісу ў Excel (4 спосабы)

3. Укажыце дзесятковыя знакі для унікальнага генератара выпадковых лікаў у Excel VBA

Мы можам выкарыстоўваць функцыю Round у нашым кодзе, каб вызначыць колькасць знакаў пасля коскі ў выпадковым чынам згенераваных унікальных лікаў . Сінтаксіс функцыі:

Round(выраз, [колькасць дзесятковых знакаў])

Нам трэба вызначыць 2-і аргумент у адпаведнасці з нашым патрабаваннем .

Заданне : Стварыць 20 выпадковых лікаў з 2 знакамі пасля коскі паміж 1 і 20 у ячэйках A1:B10.

Код : Устаўце наступны код у рэдактар ​​Visual Basic і націсніце F5 каб запусціць гэта.

3099

Выхад : На прыведзеным вышэй скрыншоце паказана 20 унікальных выпадковых цэлых лікаў з 2 знакі пасля коскі ў дыяпазоне 1 і 20.

Дадатковая інфармацыя: Стварэнне выпадковага ліку ў Excel з дапамогай дзесятковых знакаў (3 метады)

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

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

Задача: Стварэнне20 выпадковых лікаў у дыяпазоне вочак A1:B10 з выкарыстаннем UserForm з уваходнымі значэннямі (i) ніжняй мяжой (ii) верхняя мяжа (iii) колькасць знакаў пасля коскі.

Стварыце UserForm:

Выканайце наступныя дзеянні, каб стварыць UserForm з нашымі пажаданымі палямі ўводу .

  • Перайдзіце на ўкладку Распрацоўшчык з стужкі Excel .
  • Націсніце на Візуал Базавы варыянт.

  • У акне Visual Basic для прыкладанняў пстрыкніце выпадальнае меню Уставіць каб выбраць параметр UserForm .

  • У UserForm дадаць цэтлік .
  • Дадайце цэтлік як Ніжняя мяжа ва ўласцівасцях.

  • Дадайце дзве яшчэ цэтлікі з назвамі Верхні пояс і Дзесятковыя знакі .

  • Цяпер дадайце тры TextBoxes у UserForm .

  • На гэтым этапе дадайце a CommandButton і назавіце яго Generate .

  • Цяпер двойчы пстрыкніце на CommandButton і ўстаўце наступны код у рэдактар ​​кода .
9246

  • Націсніце F5 каб запусціць код і UserForm з'явілася .
  • Пастаўце ніжнюю мяжу , верхнюю мяжу і лічбу з знакаў пасля коскі ў Форме карыстальніка і націсніце СтварыцьКнопка .

Вывад : у ячэйках A1:B10 ёсць 20 выпадковых лічбы з 2 знакамі пасля коскі ў дыяпазоне ад 1 да 30.

Чытаць далей: Як згенераваць выпадковыя лікі без дублікатаў у Excel (7 спосабаў)

Пра што трэба памятаць

  • Мы таксама можам выкарыстоўваць Функцыя Fix замест функцыі Int для генерацыі унікальных цэлых лікаў . Функцыя выдаляе дробавую частку з ліку гэтак жа, як функцыя Int .

Выснова

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

Х'ю Уэст з'яўляецца вельмі дасведчаным трэнерам і аналітыкам Excel з больш чым 10-гадовым вопытам работы ў галіны. Ён мае ступень бакалаўра ў галіне бухгалтарскага ўліку і фінансаў і ступень магістра дзелавога адміністравання. Х'ю захапляецца навучаннем і распрацаваў унікальны падыход да навучання, які лёгка прытрымлівацца і зразумець. Яго экспертныя веды Excel дапамаглі тысячам студэнтаў і спецыялістаў па ўсім свеце палепшыць свае навыкі і атрымаць поспех у сваёй кар'еры. Праз свой блог Х'ю дзеліцца сваімі ведамі з усім светам, прапаноўваючы бясплатныя падручнікі па Excel і онлайн-трэнінгі, каб дапамагчы прыватным асобам і прадпрыемствам цалкам раскрыць свой патэнцыял.