Função Rnd

Retorna um Single que contém 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 for Rnd gera
Menos de zero O mesmo número todas as vezes, usando Número como a 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 o Rnd gera um número pseudo-aleatório:

  • Para qualquer semente inicial, a mesma sequência de números é 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úmero aleatório com uma semente com base 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 upperbound é o número mais alto do intervalo, e lowerbound é o número mais baixo no 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.