Função Rnd

Retorna um Single contendo um número pseudo-aleatório.

Sintaxe

rnd [ (número) ]

O argumentoNúmero opcional é uma expressão numérica única ou qualquer expressão numérica válida.

Valores de retorno

Se Número é Rnd gera
Menor que zero O mesmo número sempre, usando Número como semente.
Maior que zero O próximo número na sequência pseudo-aleatória.
Igual a zero O número gerado mais recentemente.
Não fornecido O próximo número na sequência pseudo-aleatória.

Comentários

A função Rnd retorna um valor menor que 1, mas maior ou igual a zero.

O valor de Número determina como Rnd gera um número pseudo-aleatório:

  • Para qualquer semente inicial, a mesma sequência numérica é gerada porque cada chamada sucessiva para a função Rnd usa o número anterior como uma semente para o próximo número na sequência.

  • Antes de chamar Rnd, use a instrução Randomize sem um argumento para inicializar o gerador de números aleatórios com uma semente baseada no temporizador do sistema.

Para produzir inteiros aleatórios em um determinado intervalo, use esta fórmula:

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

Aqui, o limite superior é o número mais alto do intervalo e o limite inferior é o número mais baixo do intervalo.

Observação

Para repetir sequências de números aleatórios, chame Rnd com um argumento negativo imediatamente antes de usar Randomize com um argumento numérico. Usar Randomize com o mesmo valor para Número não repete a sequência anterior.

Exemplo

Este exemplo usa a função Rnd para gerar um valor inteiro aleatório de 1 a 6.

Dim MyValue As Integer
MyValue = Int((6 * Rnd) + 1)    ' Generate random value between 1 and 6.

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.