Introducere la numărul VBA aleatoriu

În excel avem o funcție numită RAND care este folosită pentru generarea numerelor aleatorii. Așa cum avem funcția RND în VBA, care este folosită pentru generarea de numere aleatorii. Funcția RND generează numere mai mari de 0, dar mai mici de 1.

Sintaxa numărului întâmplător în Excel VBA

Sintaxa funcției Random Number excel VBA este următoarea:

Putem vedea în sintaxa funcției RND de mai sus, putem utiliza doar un singur număr ca intrare.

Oferim intrarea în funcția RND sub 3 moduri;

  1. Dacă dăm numărul <0, atunci va genera același număr de fiecare dată când rulăm codul.
  2. Dacă dăm un număr ca 0, atunci va apărea cel mai recent număr care a fost generat.
  3. Dacă dăm un număr> 0, atunci va continua să genereze diferite numere aleatorii. Dar va fi în succesiune.

Cum se utilizează funcția de numere aleatorii Excel?

Să vedem exemplele de număr aleatoriu în Excel VBA.

Puteți descărca acest șablon Excel Număr aleatoriu VBA aici - Șablonul Excel VBA ale numărului aleatoriu

Exemplul # 1 - VBA Număr aleatoriu

Pasul 1: Acest lucru îl putem aplica direct la VBA. Pentru aceasta, accesați fereastra VBA și deschideți un modul din meniul Insert, așa cum se arată mai jos.

Pasul 2: Odată ce facem asta vom primi o fereastră a modulului în VBA. În acel modul, scrieți subcategoria numărului aleatoriu VBA în același nume sau în orice nume, după alegere.

Cod:

 Sub RandomNumber () End Sub 

Pasul 3: Alegeți acum un cuvânt sau un alfabet și definiți-l ca o variabilă și atribuiți Dublu acestuia. Aici avem în vedere variabila Dim A și o dăm lui Double . Selectarea dublului în loc de Integer va fi utilă, deoarece vom vedea valori zecimale cuprinse între 0 și 1.

Cod:

 Sub RandomNumber () Dim A ca dublu capăt sub 

Pasul 4: Acum urmează să folosim variabila A pe care am definit-o mai sus și îi vom atribui o funcție Rnd pentru generarea de numere aleatorii așa cum se arată mai jos.

Cod:

 Sub RandomNumber () Dim A As Double A = Rnd (End Sub 

Pasul 5: După cum putem vedea în ecranul de mai sus, funcția RND are sintaxa ca număr și acesta va fi un număr cu o singură cifră. Aici vom vedea cum oferirea unui număr mai mic de 0 va genera ce? Deci, între parantezele funcției RND se introduce -1 care este cel mai recent număr mai mic de 0.

Cod:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) End Sub 

Pasul 6: În sfârșit, pentru a obține ieșirea, avem nevoie de referința celulei sau a unei căsuțe de mesaje în care aceasta va reflecta numărul aleatoriu. Introduceți comanda Msgbox din caseta de mesaj și atribuiți aici variabila definită.

Cod:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) MsgBox A Sub Sub 

Pasul 7: Acum putem compila codul și îl putem executa făcând clic pe butonul de redare de sub bara de meniu. Vom vedea primul număr aleator generat care este mai mic de 0, care este 0.2240070104599, așa cum se arată mai jos.

Dacă vom executa din nou codul, va continua să genereze același cod din nou și din nou.

Exemplul # 2 - VBA Număr aleatoriu

Am văzut cum să generăm numere aleatorii care este mai mică de 0. Există un alt mod de a obține numere aleatorii. În acest exemplu, vom genera numărul aleatoriu oferind 0 ca o intrare pentru funcția RND .

Pentru aceasta, vom folosi același cod folosit în exemplul 1.

Pasul 1: Acum în locul -1 care se află între parantezele funcției RND se pune 0.

Cod:

 Sub RandomNumber () Dim A As Double A = Rnd (0) MsgBox A Sub End 

Pasul 2: Putem compila codul, dacă este necesar sau altfel rulat direct apăsând tasta F5 (tasta rapidă) pentru a rula codul. Putem vedea că funcția RND a generat același număr care a fost generat atunci când am dat intrare mai mică de 0. Ceea ce înseamnă că, dacă dăm 0 ca o funcție RND de intrare, atunci va genera numărul generat anterior.

Și dacă rulăm din nou codul, va continua să dăm același număr aleatoriu.

Exemplul # 3 - VBA Număr aleatoriu

În acest exemplu, vom vedea ce se va întâmpla dacă vom da o valoare mai mare de 0. Putem alege să scriem un cod nou sau putem face modificările codului pe care le-am scris mai sus. Să luăm în considerare codul pe care l-am văzut mai sus.

Pasul 1: Deoarece trebuie să testăm numărul mai mare de 0, atunci în funcția RND folosiți semifabricat și adăugați +1 pentru valori mai mari de 1, așa cum se arată mai jos.

Cod:

 Sub RandomNumber () Dim A As Double A = 1 + Rnd () MsgBox A Sub End 

Pasul 2: Compilați codul dacă doriți și rulați apoi codul. Vom vedea că numărul generat la întâmplare este diferit de numărul generat anterior. Mai jos este imaginea de ecran, care arată numărul aleatoriu este în fracțiunea de 1.035… .41 . Ceea ce este mai mare de 0.

Dacă rulăm din nou același cod, vom continua să obținem numere diferite aleatoare. Așa că am obținut imediat după rularea codului. De data aceasta numerele aleatorii pe care le-am obținut sunt valoarea dublă a infracțiunii comparativ cu numărul aleator generat anterior.

Beneficiile numărului VBA aleatoriu

  1. Pare dificil, dar este ușor de aplicat.
  2. Acest lucru este destul de util atunci când lucrăm la generarea numerelor biletelor la întâmplare.
  3. Procesul prezentat în exemplul 3 poate fi implementat în mai multe moduri diferite.

Lucruri de amintit

  • Aceasta poate fi implementată prin intermediul funcției MS Excel, de asemenea, cu numele funcției RAND.
  • Noi testăm exemplul-2 mai întâi înainte de a rula codul exemplului-2. Pentru că va arăta de fapt care a fost numărul generat mai devreme.
  • Testarea funcției RND păstrând parantezele necompletate ne va oferi și un număr aleatoriu.
  • Dacă vom atribui variabila ca Integer, atunci vom primi doar numere întregi care vor fi identice cu 0 sau 1.
  • Dacă utilizăm numere de două cifre ca intrare în funcția RND, atunci va genera și numărul aleatoriu.

Articole recomandate

Acesta este un ghid pentru numărul VBA aleatoriu. Aici vom discuta despre modul de a genera Număr aleatoriu în VBA Excel folosind funcția RND împreună cu exemple practice și șablon excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. VBA InStr a explicat cu exemple
  2. VBA Integer Data Type
  3. Cum să selectați celula folosind codul VBA?
  4. Transpuneți un interval în VBA

Categorie: