Excel VBA: Hazarda Nombra Generatoro Sen Duplikatoj (4 Ekzemploj)

  • Kundividu Ĉi Tion
Hugh West

Ĉi tiu artikolo ilustras 4 ekzemplojn de hazarda nombro-generatoro sen duplikatoj uzante VBA en Excel. Ĉi tie ni uzos la enkonstruitan Rnd-funkcion de Excel por agordi nian kodon. Ni plonĝu en la ekzemplojn por lerni la teknikojn por generi unikajn hazardajn nombrojn.

Elŝutu Praktikan Laborlibron

Elŝutu ĉi tiun praktikan laborlibron por ekzerci dum vi legas ĉi tiun artikolon.

Hazarda Nombra Generatoro kun Sen Duplikatoj.xlsm

4 Ekzemploj de Hazarda Nombra Generatoro kun Sen Duplikatoj en Excel VBA

Skribu Kodon en Visual Basic Editor

Por generi hazardajn nombrojn sen duplikatoj , ni devas malfermi kaj skribi VBA. kodo en la vida baza redaktilo. Sekvu la paŝojn por malfermi la vidan bazan redaktilon kaj skribi kodon tie.

  • Iru al la >Ellaboranto langeto de la Excel-Ruando .
  • Alklaku la Visual Basic-opcion.

  • En la Vida Baza Por Aplikoj fenestro, alklaku la Enmeti falmenuon por elekti la Novan Modulon. opcio.

Nun metu vian kodon en la vida kodredaktilo kaj premu F5 por ruli in.

1. Uzo de VBA Rnd-Funkcio por Generi Hazardan Nombron Sen Duplikatoj

La Rnd-funkcio estas uzata en Excel VBA al genu hazardajn nombrojn kiuj estas inter 0 kaj 1 ekskluziva.

Tasko : Generu 10 hazardajn nombrojn inter 0 kaj 1 en ĉeloj A1:A10.

Kodo : Enigu la jenan kodon en la vida baza redaktilo kaj premu F5 por funkciigi ĝin.

6751

Eligo : La supra ekrankopio montras 10 unikajn hazardajn nombrojn en la gamo de 0 kaj 1.

Koda Klarigo:

En ĉi tiu kodo, ni uzis la Rnd-funkcion por enigi hazardajn nombrojn en la ĉela gamo A1:A10 . Antaŭ enmeti a novan numeron , ni uzis Do While Loop por serĉi la nombron en la antaŭdifinita ĉela gamo (A1:A10) ĉu ĝi jam ekzistas ne . Por kontroli la ekziston de la nombro en la ĉela gamo ĉiufoje, ni agordis la kodon per la NOMBRU SE , Ĉi tiu funkcio kontrolas an novan hazardan nombron en la listo de jam ekzistantaj nombroj antaŭ ol enmeti ĝin.

Legu Pli : Formulo de Excel por Generi Hazardan Numeron (5 ekzemploj)

2. Hazarda Nombra Generatoro por Difinita Malsupra kaj Supra Rando sen Duplikatoj

Por generi hazardajn nombrojn ene de difinita intervalo , ni devas starigu la malsupran baron kaj superan en nia VBA-kodo. Por informoj, la malsupra rando estas la plej malsupra nombro kaj la supra rando estas la plej alta nombro en la intervalo por la hazarda nombrogeneratoro. Ni povas uzi la sekvan formulon en nia kodo.

(supera – malsupera + 1) * Rnd + malsupra

2.1 Hazarda Nombra Generatoro - Decimala

Tasko : Generu 10 hazardajn nombrojn inter 10 kaj 20 en ĉeloj A1:A10.

Kodo : Enigu la jenan kodon en la vida baza redaktilo kaj premu F5 por funkciigi ĝin.

5133

Eligo : La supra ekrankopio montras 10 unikajn hazardajn nombrojn en la gamo de 1 kaj 10.

2.2 Hazarda Nombra Generatoro - Entjero

En ĉi tiu ilustraĵo, ni uzos la VBA Int-funkcio por forigi la frakcian parton el la hazardaj nombroj .

Tasko : Generu 20 hazardajn entjerajn nombrojn inter 1 kaj 20 en ĉeloj A1:B10.

Kodo : Enigu la jenan kodon en la vida baza redaktilo kaj premu F5 por funkciigi ĝin.

4911

Eligo : La supra ekrankopio montras 20 unikajn hazardajn entjerajn nombrojn en la gamo de 1 kaj 20.

Legu Pli: Hazarda Nombra Generatoro en Excel sen Ripetoj (9 Metodoj)

Similaj Legadoj

  • Hazarda Nombra Generatoro kun Datuma Analizilo kaj Funkcioj en Excel
  • Kiel Generu hazardajn datumojn en Excel (9Facilaj Metodoj)
  • Hazarda 5 Cifera Nombra Generatoro en Excel (7 Ekzemploj)
  • Hazarda 4 Cifera Nombra Generatoro en Excel (8 Ekzemploj)
  • Generu Hazardan Numeron el Listo en Excel (4 Manieroj)

3. Specifiku Decimalajn Lokojn por Unika Hazarda Nombra Generatoro en Excel VBA

Ni povas uzi la Ronda funkcio en nia kodo por specifi la nombro de decimalaj lokoj en la hazarde generitaj unikaj nombroj . La sintakso de la funkcio estas-

Ronda (esprimo, [nombredecimallokoj])

Ni devas specifi la 2a argumento laŭ nia postulo .

Tasko : Generu 20 hazardajn nombrojn kun 2 dekumaj lokoj inter 1 kaj 20 en ĉeloj A1:B10.

Kodo : Enigu la jenan kodon en la vida baza redaktilo kaj premu F5 por funkciigi ĝin.

7800

Eligo : La supra ekrankopio montras 20 unikajn hazardajn entjerajn nombrojn kun 2 decimalaj lokoj en la gamo de 1 kaj 20.

Legu Pli: Generu Hazardan Nombron en Excel kun Decimaloj (3 Metodoj)

4. Disvolvu Uzantformon por Hazarda Nombra Generatoro sen Duplikatoj en Excel VBA

En ĉi tiu ilustraĵo, ni montros kiel uzi UzantFormon en Excel VBA por generi hazardajn nombrojn kun sen duplikatoj .

Tasko: Generu20 hazardaj nombroj en ĉelintervalo A1:B10 uzante Uzantformon kun la enigvaloroj (i) malsupra rando (ii) supera (iii) nombro de decimalaj lokoj.

Krei UzantFormon:

Sekvu la paŝojn sube por krei Uzantformularon kun niaj dezirataj enigkampoj .

  • Iru al la langeto Programisto de la Excel-Rubanto .
  • Alklaku la Vidiaĵon. Baza opcio.

  • En la Vida Baza por Aplikoj fenestro, alklaku la Enmeti menuumon por elekti la Uzantformularo opcion.

  • En la Uzantformularo aldonu etikedo .
  • Subtitulu la etikedon kiel Malsupra Limo en la propraĵoj.

  • Aldonu du pliajn etikedojn nomitajn Upperbund kaj DecimalPlaces .

  • Nun aldonu tri Tekskestojn en la Uzantformo .

  • En ĉi tiu etapo, aldonu a Komandbutonon kaj nomu ĝin Generu .

  • Nun, duoble alklaku la Komandbutonon kaj metu la sekvan kodon en la kodredaktilon .
6955

  • Premu F5 por funkciigi la kodon kaj la Uzantformo aperis .
  • Metu la malsupran limon , supran limon, kaj la numeron el decimalaj lokoj en la Uzantformo kaj premu la GeneruButono .

Eligo : En ĉeloj A1:B10 , estas 20 hazardaj nombroj kun 2 decimalaj lokoj en la intervalo de 1 ĝis 30.

Legu pli: Kiel Krei Hazardajn Nombrojn Sen Duplikatoj en Excel (7 Manieroj)

Aferoj por Memori

  • Ni ankaŭ povus uzi la Fixu funkcion anstataŭ la Int-funkcio por generi unikajn entjerajn nombrojn . La funkcio forigas la frakcian parton de nombro same kiel la Int-funkcio .

Konkludo

Nun ni scias kiel generi unikajn hazardajn nombrojn uzante VBA en Excel helpe de taŭgaj ekzemploj. Espereble, ĝi helpus vin uzi la funkciojn pli memfide. Ajnaj demandoj aŭ sugestoj ne forgesu meti ilin en la komentan skatolon sube.

Hugh West estas tre sperta Excel-trejnisto kaj analizisto kun pli ol 10 jaroj da sperto en la industrio. Li tenas bakalaŭron en Kontado kaj Financo kaj magistron en Komercadministracio. Hugh havas entuziasmon por instruado kaj evoluigis unikan instruan aliron kiu estas facile sekvi kaj kompreni. Lia sperta scio pri Excel helpis milojn da studentoj kaj profesiuloj tutmonde plibonigi siajn kapablojn kaj elstari en siaj karieroj. Per sia blogo, Hugh dividas sian scion kun la mondo, proponante senpagajn Excel-lernilojn kaj interretan trejnadon por helpi individuojn kaj entreprenojn atingi sian plenan potencialon.