# VBA Random Number

Written by

Reviewed by

Last updated on September 21, 2021

*This tutorial will demonstrate how to work with random numbers in VBA.*

## RND Function

The RND Function generates a number that is between 0 and 1. The syntax of the RND Function is:

Rnd([Number]) where:

- Number (
*Optional)*– This is optional and if <0, the function returns the same random number on each call using [Number] as the seed, if =0, the function returns the most recent random number, if >0 the function returns the next generated random number. If blank the default >0, is used.

```
Sub RndNum()
MsgBox Rnd()
End Sub
```

## Generating a Random Number in VBA

In order to generate a random number between two values, you have to use the RND Function in combination with the INT Function (Integer Function) using the following general formula:

- Int(lowerbound + Rnd * ( upperbound – lowerbound + 1 ) )

So, in order to generate a random number between 2 and 30, you would use the following code:

```
Sub GeneratingARandomNumber()
Dim randomNumber As Integer
randomNumber = Int(2 + Rnd * (30 - 2 + 1))
Debug.Print randomNumber
End Sub
```

## VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!Learn More!