I have a query about loops and random numbers

  • Thread starter Thread starter scubadiver
  • Start date Start date
S

scubadiver

I am learning some basics of VBA and I am trying to write a Sudoku creator.

The problem I have is that I run the code three times and on the third time
it crashes. When I re-run the code, the numbers appear in the same places.
Why aren't the numbers appearing in different places every time I run the
code?

cheers
 
You need to run the randomize function to seed the random number generator.
I would use time as the seed. the help below says that the randomize function
is started with time. Maybe they is something wrong with your system timer.

Randomize (Time)
------------------------------------------------------------------------------------
VBA help for randomize

------------------------------------------------------------------------------------

Randomize Statement


Initializes the random-number generator.

Syntax

Randomize [number]

The optional number argument is a Variant or any valid numeric expression.

Remarks

Randomize uses number to initialize the Rnd function's random-number
generator, giving it a new seed value. If you omit number, the value returned
by the system timer is used as the new seed value.

If Randomize is not used, the Rnd function (with no arguments) uses the same
number as a seed the first time it is called, and thereafter uses the last
generated number as a seed value.

Note To repeat sequences of random numbers, call Rnd with a negative
argument immediately before using Randomize with a numeric argument. Using
Randomize with the same value for number does not repeat the previous
sequence.
 
I just inserted "randomize" at the beginning and it seems to be ok.

cheers


Joel said:
You need to run the randomize function to seed the random number generator.
I would use time as the seed. the help below says that the randomize function
is started with time. Maybe they is something wrong with your system timer.

Randomize (Time)
------------------------------------------------------------------------------------
VBA help for randomize

------------------------------------------------------------------------------------

Randomize Statement


Initializes the random-number generator.

Syntax

Randomize [number]

The optional number argument is a Variant or any valid numeric expression.

Remarks

Randomize uses number to initialize the Rnd function's random-number
generator, giving it a new seed value. If you omit number, the value returned
by the system timer is used as the new seed value.

If Randomize is not used, the Rnd function (with no arguments) uses the same
number as a seed the first time it is called, and thereafter uses the last
generated number as a seed value.

Note To repeat sequences of random numbers, call Rnd with a negative
argument immediately before using Randomize with a numeric argument. Using
Randomize with the same value for number does not repeat the previous
sequence.


scubadiver said:
I am learning some basics of VBA and I am trying to write a Sudoku creator.

The problem I have is that I run the code three times and on the third time
it crashes. When I re-run the code, the numbers appear in the same places.
Why aren't the numbers appearing in different places every time I run the
code?

cheers
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Back
Top