Excel VBA: Random Number Generator sûnder duplikaten (4 foarbylden)

  • Diel Dit
Hugh West

Dit artikel yllustrearret 4 foarbylden fan willekeurige getallengenerator sûnder duplikaten mei VBA yn Excel. Hjir sille wy de ynboude Rnd-funksje fan Excel brûke om ús koade te konfigurearjen. Lit ús dûke yn 'e foarbylden om de techniken te learen om unike willekeurige getallen te generearjen.

Download Practice Workbook

Download dit oefenwurkboek om te oefenjen wylst jo dit artikel lêze.

Willekeurige nûmergenerator mei gjin duplikaten.xlsm

4 Foarbylden fan willekeurige nûmergenerator mei gjin duplikaten yn Excel VBA

Skriuw koade yn Visual Basic Editor

Om willekeurige nûmers te generearjen sûnder duplikaten , moatte wy iepenje en VBA skriuwe koade yn de fisuele basisbewurker. Folgje de stappen om de fisuele basisbewurker te iepenjen en dêr wat koade te skriuwen.

  • Gean nei de Utwikkelder ljepper fan it Excel-lint .
  • Klik op de Visual Basic-opsje.

  • Klik yn it Visual Basic For Applications finster op de Ynfoegje dropdown om selektearje de Nije Module opsje.

Set no jo koade yn de fisuele koade-bewurker en druk op F5 om út te fieren it.

1. Gebrûk fan VBA Rnd-funksje om willekeurich nûmer te generearjen sûnder duplikaten

De Rnd-funksje wurdt brûkt yn Excel VBA oant generearje willekeurige getallen dy't tusken 0 binne en 1 eksklusyf.

Taak : Generearje 10 willekeurige nûmers tusken 0 en 1 yn sellen A1:A10.

Koade : Foegje de folgjende koade yn de visual basic editor en druk op F5 om it te rinnen.

1183

Utfier : It boppesteande skermôfbylding lit 10 unike willekeurige nûmers sjen yn it berik fan 0 en 1.

Koade Taljochting:

Yn dizze koade brûkten wy de Rnd funksje om willekeurige nûmers yn it selberik A1:A10 yn te foegjen. Foardat in in nij nûmer ynfoegje, brûkten wy in Do While Loop om sykje foar it nûmer yn de foarôf definieare selberik (A1:A10) of it al bestiet of net . Om it bestean fan it nûmer yn it selberik elke kear te kontrolearjen, hawwe wy de koade konfigurearre mei de COUNTIF-funksje , Dizze funksje kontrolearret in nij willekeurich nûmer yn de list fan al besteande nûmers foardat it ynfoegje.

Lês Mear : Excel-formule om willekeurich nûmer te generearjen (5 foarbylden)

2. Random Number Generator foar Defined Lowerbound and Upperbound with No Duplicates

Om willekeurige getallen te generearjen binnen in definiearre berik , moatte wy set de ûndergrûn en boppegrûn yn ús VBA-koade. Foar ynformaasje is de ûndergrûn it leechste nûmer en de boppegrûn is it heechste getal yn it berik foar de willekeurige getalgenerator. Wy kinne de folgjende formule yn ús koade brûke.

(boppegrûn – ûndergrûn + 1) * Rnd + ûndergrûn

2.1 Willekeurich Number Generator- Desimaal

Taak : Generearje 10 willekeurige getallen tusken 10 en 20 yn sellen A1:A10.

Koade : Foegje de folgjende koade yn de visual basic editor en druk op F5 om it út te fieren.

7203

Utfier : It boppesteande skermôfbylding lit 10 unike willekeurige getallen sjen yn it berik fan 1 en 10.

2.2 Random Number Generator- Integer

Yn dizze yllustraasje brûke wy de VBA Int-funksje om it fraksjediel te ferwiderjen fan de willekeurige getallen .

Taak : Generearje 20 willekeurige heule getallen tusken 1 en 20 yn sellen A1:B10.

Koade : Foegje de folgjende koade yn de visual basic editor en druk op F5 om it út te fieren.

9497

Utfier : It boppesteande skermôfbylding lit 20 unike willekeurige heule getallen sjen yn it berik fan 1 en 20.

Lês mear: Random Number Generator yn Excel mei gjin werhellingen (9 metoaden)

Gelykbere lêzings

  • Random Number Generator mei Data Analysis Tool en funksjes yn Excel
  • Hoe kin ik Generearje willekeurige gegevens yn Excel (9Maklike metoaden)
  • Random 5-sifersnûmergenerator yn Excel (7 foarbylden)
  • Random 4-digit nûmergenerator yn Excel (8 foarbylden)
  • Generearje willekeurich nûmer fan list yn Excel (4 manieren)

3. Desimaalplakken spesifisearje foar Unique Random Number Generator yn Excel VBA

Wy kinne de Rûne funksje yn ús koade brûke om op te jaan de oantal fan desimale plakken yn de willekeurich oanmakke unike nûmers . De syntaksis fan de funksje is-

Rûn(ekspresje, [numdesimale plakken])

Wy moatte oantsjutte de 2e argumint neffens ús eask .

Taak : Generearje 20 willekeurige getallen mei 2 desimale plakken tusken 1 en 20 yn sellen A1:B10.

Koade : Foegje de folgjende koade yn de visual basic editor en druk op F5 om it út te fieren.

5522

Utfier : It boppesteande skermôfbylding lit 20 unike willekeurige heule getallen sjen mei 2 desimale plakken yn it berik fan 1 en 20.

Lês mear: Generearje willekeurich nûmer yn Excel mei desimalen (3 metoaden)

4. Untwikkelje in brûkersformulier foar willekeurige nûmergenerator sûnder duplikaten yn Excel VBA

Yn dizze yllustraasje sille wy sjen litte hoe't jo in UserForm yn <1 brûke>Excel VBA om willekeurige getallen te generearjen mei gjin duplikaten .

Taak: Generearje20 willekeurige nûmers yn selberik A1:B10 mei in UserForm mei de ynfierwearden (i) ûndergrûn (ii) boppegrûn (iii) oantal desimale plakken.

Meitsje in brûkersformulier:

Folgje de stappen hjirûnder om in UserForm te meitsjen mei ús winske ynfierfjilden .

  • Gean nei it ljepblêd ûntwikkelder fanút it Excel-lint .
  • Klik op de Visual Basis opsje.

  • Klik yn it Visual Basic For Applications finster op de Ynfoegje dropdown to selektearje de UserForm opsje.

  • Yn it UserForm tafoegje in label .
  • Tapke it label as LowerBound yn 'e eigenskippen.

  • Twa twa mear labels taheakje neamd Upperbund en Desimaalplakken .

  • Foegje no trije tekstfakken ta yn it UserForm .

  • Op dit stadium, foegje a CommandButton en neam it Generearje .

  • No, dûbelklikje de Kommandoknop en set de folgjende koade yn de koade bewurker .
2566

  • Druk op F5 om út te fieren de koade en it UserForm is ferskynd .
  • Set de ûndergrûn , boppegrûn, en it nûmer fan desimale plakken yn it UserForm en druk op de GenerearjeKnop .

Utfier : Yn sellen A1:B10 binne 20 willekeurich getallen mei 2 desimale plakken yn it berik fan 1 oant 30.

Lês mear: Hoe kinne jo willekeurige nûmers generearje sûnder duplikaten yn Excel (7 manieren)

Dingen om te ûnthâlden

  • Wy kinne ek de Fêststelle funksje yn stee fan de Int funksje om te generearjen unike hiele getallen . De funksje ferwidert it fraksje fan in nûmer krekt as de Int-funksje .

Konklúzje

No witte wy hoe't jo unike willekeurige nûmers kinne generearje mei VBA yn Excel mei help fan passende foarbylden. Hooplik soe it jo helpe om de funksjonaliteit mei fertrouwen te brûken. Alle fragen of suggestjes ferjit se net yn it kommentaarfakje hjirûnder te pleatsen.

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.