Introduktion til VBA tilfældigt nummer

I Excel har vi en funktion kaldet RAND, der bruges til at generere tilfældige tal. Så da vi har RND- funktion i VBA, der bruges til at generere tilfældige tal. RND-funktionen genererer tal, der er større end 0, men mindre end 1.

Syntaks for tilfældigt antal i Excel VBA

Syntaks for Random Number-funktion excel VBA er som følger:

Vi kan se i syntaks af RND-funktionen ovenfor, vi kan kun bruge et enkelt tal som input.

Vi giver input i RND-funktion på under 3 måder;

  1. Hvis vi giver nummer <0, genererer det det samme nummer hver gang vi kører koden.
  2. Hvis vi giver et tal som 0, vises det det seneste nummer, der blev genereret.
  3. Hvis vi giver nummer> 0, genererer det fortsat forskellige tilfældige tal. Men det vil være i rækkefølge.

Sådan bruges Excel tilfældigt tal-funktion?

Lad os se eksemplerne på tilfældigt antal i Excel VBA.

Du kan downloade denne VBA tilfældigt nummer Excel skabelon her - VBA tilfældigt nummer Excel skabelon

Eksempel # 1 - VBA tilfældigt nummer

Trin 1: Dette kan vi direkte anvende til VBA. Gå hertil til VBA-vinduet og åbn et modul fra menuen Indsæt som vist nedenfor.

Trin 2: Når vi først har gjort det, får vi et vindue med modul i VBA. I dette modul skal du skrive underkategori af VBA tilfældigt nummer i samme navn eller i ethvert navn som pr. Valg.

Kode:

 Sub RandomNumber () End Sub 

Trin 3: Vælg nu et ord eller alfabet og definer det som en variabel og tildele det dobbelte til det. Her overvejer vi variabel Dim A og giver den til Double . Valg af dobbelt i stedet for heltal vil være nyttigt, fordi vi vil se decimalværdier, der er mellem 0 og 1.

Kode:

 Sub RandomNumber () Dim A As dobbelt slut Sub 

Trin 4: Herefter bruger vi variabel A, som vi definerede ovenfor, og vi tildeler den en funktion Rnd til generering af tilfældige tal som vist nedenfor.

Kode:

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

Trin 5: Som vi kan se på ovenstående skærmbillede, har RND- funktion syntaxen som nummeret, og det vil være et enkeltcifret nummer. Her vil vi se, hvordan give et tal mindre end 0 vil generere hvad? Så i parentes af RND-funktion indsættes -1, som er det seneste antal mindre end 0.

Kode:

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

Trin 6: Til sidst for at få output har vi brug for reference til celle eller en meddelelsesboks, hvor det afspejler det tilfældige antal. Indsæt Msgbox-kommando i meddelelsesfeltet, og tildel den definerede variabel her.

Kode:

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

Trin 7: Nu kan vi kompilere koden og køre den ved at klikke på afspilningsknappen under menulinjen. Vi vil se det første genererede tilfældige tal, som er mindre end 0, hvilket er 0.2240070104599 som vist nedenfor.

Hvis vi igen kører koden, fortsætter den med at generere den samme kode igen og igen.

Eksempel # 2 - VBA tilfældigt antal

Vi har set, hvordan man genererer tilfældige tal, som er mindre end 0. Der er en anden måde at få tilfældige tal på. I dette eksempel genererer vi tilfældigt tal ved at give 0 som input til RND- funktion.

Til dette vil vi bruge den samme kode, der bruges i eksempel-1.

Trin 1: Nu i stedet for -1, som er mellem parenteserne i RND-funktion sæt 0.

Kode:

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

Trin 2: Vi kan kompilere koden, hvis det er nødvendigt eller ellers køre direkte ved at trykke på F5-tasten (genvejstast) for at køre koden. Vi kan se, at RND-funktionen har genereret det samme nummer, som blev genereret, da vi gav input mindre end 0. Hvilket betyder, hvis vi giver 0 som en input-RND-funktion, vil den generere det tidligere genererede nummer.

Og hvis vi kører koden igen, vil den fortsætte med at give det samme tilfældige tal.

Eksempel # 3 - VBA tilfældigt nummer

I dette eksempel vil vi se, hvad der vil ske, hvis vi giver en værdi større end 0. Vi kan vælge at skrive ny kode, eller vi kan foretage ændringerne i koden, som vi har skrevet ovenfor. Lad os overveje koden, som vi har set ovenfor.

Trin 1: Da vi har brug for at teste antal større end 0, så brug i RND-funktion blank og tilføj +1 til værdier større end 1 som vist nedenfor.

Kode:

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

Trin 2: Kompilér koden, hvis du vil, og kør derefter koden. Vi vil se, at det genererede tilfældige antal er forskelligt end det antal, der blev genereret tidligere. Nedenfor er skærmbilledet, der viser det tilfældige antal er i brøkdelen af 1.035… .41 . Hvilket er større end 0.

Hvis vi kører den samme kode igen, fortsætter vi med at få forskellige tilfældige tal. Så vi fik lige efter at have kørt koden igen. Denne gang er de tilfældige tal, vi fik, den dobbelte brudværdi sammenlignet med det tilfældige antal genereret tidligere.

Fordele ved VBA tilfældigt antal

  1. Det virker vanskeligt, men det er let at anvende.
  2. Dette er meget nyttigt, når vi arbejder på at generere billetnumre tilfældigt.
  3. Processen vist i eksempel 3 kan implementeres på mange forskellige måder.

Ting at huske

  • Dette kan implementeres i MS Excel-funktionen også med funktionsnavnet RAND.
  • Vi testeksempel-2 først, før vi kører kodeeksempel-2. Fordi det faktisk viser, hvad der var antallet, der blev genereret tidligere.
  • Test af RND-funktionen ved at holde parenteserne tomme vil også give os et tilfældigt tal.
  • Hvis vi tildeler variablen som heltal, får vi kun hele tal, der vil være det samme som 0 eller 1.
  • Hvis vi bruger tocifrede tal som input i RND-funktion, genererer det også tilfældigt tal.

Anbefalede artikler

Dette er en guide til VBA tilfældigt nummer. Her diskuterer vi, hvordan man genererer tilfældigt tal i VBA Excel ved hjælp af RND-funktion sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA InStr forklaret med eksempler
  2. VBA heltal datatype
  3. Hvordan vælger du celle ved hjælp af VBA-kode?
  4. Transponér et interval i VBA

Kategori: