Como Gerar Números Aleatórios no Excel

Como Gerar Números Aleatórios no Excel

Este tutorial explica as especificidades do algoritmo gerador de números aleatórios do Excel e demonstra como usar as funções ALEATÓRIO e ALEATÓRIOENTRE para gerar números aleatórios, datas, senhas e outras sequências de texto no Excel.

Antes de nos aprofundarmos em diferentes técnicas de geração de números aleatórios no Excel, vamos definir o que eles realmente são: os dados aleatórios são uma série de números, letras ou outros símbolos que carecem de qualquer padrão.

A aleatoriedade tem uma variedade de aplicações diferentes em criptografia, estatística, loteria, jogos de azar e muitos outros campos. E como sempre houve demanda, vários métodos de criação de números aleatórios existem desde antigamente, como jogar moedas, jogar dados, embaralhar cartas e assim por diante.

Gerador de números aleatórios do Excel

Embora o gerador aleatório do Excel passe em todos os testes padrão de aleatoriedade, ele não gera números aleatórios verdadeiros. Mas não descarte isto imediatamente, pois números pseudoaleatórios produzidos pelas funções aleatórias do Excel são adequados para muitos propósitos.

Vamos olhar o algoritmo do gerador aleatório do Excel para que você saiba o que se pode esperar dele e o que não pode.

Como a maioria dos programas de computador, o gerador de números aleatórios do Excel produz números pseudo-aleatórios usando algumas fórmulas matemáticas. Isso pode significar que, em teoria, os números aleatórios gerados pelo Excel são previsíveis, desde que alguém conheça todos os detalhes do algoritmo do gerador. Por isso nunca foi documentado e dificilmente será. Bem, mas o que se sabe sobre o gerador de números aleatórios no Excel?

As funções ALEATÓRIO e ALEATÓRIOENTRE do Excel geram números pseudo-aleatórios a partir da distribuição uniforme, também conhecida como distribuição retangular, onde há probabilidade igual para todos os valores que uma variável aleatória pode assumir. Um bom exemplo de distribuição uniforme é o lançamento de um único dado. O resultado do sorteio é de seis valores possíveis (1, 2, 3, 4, 5, 6) e cada um desses valores é igualmente provável de ocorrer.

Não há como propagar as funções ALEATÓRIO ou ALEATÓRIOENTRE do Excel, que dizem ter sido inicializadas a partir da hora do sistema do computador. Tecnicamente, uma semente é o ponto de partida para gerar uma sequência de números aleatórios. E cada vez que uma função aleatória do Excel é chamada, uma nova semente é usada que retorna uma sequência aleatória exclusiva. Em outras palavras, ao usar o gerador de números aleatórios no Excel, você não pode obter uma sequência repetível com a função ALEATÓRIO ou ALEATÓRIOENTRE, nem com VBA, nem por qualquer outro meio.

Nas primeiras versões do Excel, anteriores ao Excel 2003, o algoritmo de geração aleatória tinha um período relativamente pequeno (menos de 1 milhão de sequência de números aleatórios não recorrentes) e falhou em vários testes padrão de aleatoriedade em sequências aleatórias extensas. Portanto, se alguém ainda trabalha com uma versão antiga do Excel, é melhor não usar a função ALEATÓRIO com grandes modelos de simulação.

Se você está procurando dados aleatórios verdadeiros, provavelmente pode usar um gerador de números aleatórios de terceiros. A maioria oferecem serviços gratuitos para gerar números aleatórios, jogos e loterias, códigos de cores, nomes aleatórios, senhas, sequências alfanuméricas e outros dados aleatórios.

Função ALEATÓRIO – gera números reais aleatórios

A função ALEATÓRIO no Excel é uma das duas funções especialmente projetadas para gerar números aleatórios. Ela retorna um número decimal aleatório (número real) entre 0 e 1.

ALEATÓRIO () é uma função volátil, o que significa que um novo número aleatório é gerado toda vez que a planilha é calculada. E isso acontece sempre que você executa qualquer ação em uma planilha, por exemplo, atualizar uma fórmula (não necessariamente a fórmula ALEATÓRIO, apenas qualquer outra fórmula em uma planilha), editar uma célula ou inserir novos dados.

A função ALEATÓRIO está disponível em todas as versões do Excel 2019, 2016, 2013, 2010, 2007, 2003 e 2000.

Como a função ALEATÓRIO do Excel não tem argumentos, basta inserir = ALEATÓRIO () em uma célula e, em seguida, copiar a fórmula em quantas células desejar:

Agora, vamos dar um passo a frente e escrever algumas fórmulas para gerar números aleatórios de acordo com suas condições.

Fórmula 1: Especifique o valor do limite superior do intervalo

Para gerar números aleatórios entre zero e qualquer valor n, multiplique a função ALEATÓRIO por n:

= ALEATÓRIO () * n

Por exemplo, para criar uma sequência de números aleatórios maior ou igual a 0, mas menor que 50, use a seguinte fórmula:

= ALEATÓRIO () * 50

Observação: O valor do limite superior nunca é incluído na sequência aleatória retornada. Por exemplo, se deseja obter números aleatórios entre 0 e 10, incluindo 10, a fórmula certa é

= ALEATÓRIO () * 11

Fórmula 2: Gere números aleatórios entre dois números

Para criar um número aleatório entre outros dois números que você especificar, use a seguinte fórmula ALEATÓRIO:

= ALEATÓRIO () * (B-A) + A

Onde A é o valor do limite inferior (o menor número) e B é o valor do limite superior (o maior número).

Por exemplo, para gerar números aleatórios entre 10 e 50, você pode usar a seguinte fórmula:

= ALEATÓRIO () * (50-10) +10

Observação: Esta fórmula aleatória nunca retornará um número igual ao maior número do intervalo especificado (valor B).

Fórmula 3: Gerando números inteiros aleatórios no Excel

Para fazer a função ALEATÓRIO do Excel produzir números inteiros aleatórios, pegue uma das fórmulas mencionadas acima e envolva-a na função INT.

Para criar números inteiros aleatórios entre 0 e 50:

= INT (ALEATÓRIO () * 50)

Para gerar números inteiros aleatórios entre 10 e 50:

= INT (ALEATÓRIO () * (50-10) +10)

Função ALEATÓRIOENTRE do Excel – gera inteiros aleatórios em um intervalo especificado

ALEATÓRIOENTRE é outra função fornecida pelo Excel para gerar números aleatórios. Ela retorna números inteiros aleatórios no intervalo que você especificar:

= ALEATÓRIOENTRE (inferior; superior)

Obviamente, o primeiro argumento chamado inferior é o número mais baixo e superior é o número mais alto no intervalo de números aleatórios que se deseja obter.

Como a função ALEATÓRIO, o ALEATÓRIOENTRE do Excel é uma função volátil e retorna um novo número inteiro aleatório toda vez que a planilha é recalculada.

Por exemplo, para gerar números inteiros aleatórios entre 10 e 50 (incluindo 10 e 50), use a seguinte fórmula ALEATÓRIOENTRE:

= ALEATÓRIOENTRE (10; 50)

A função ALEATÓRIOENTRE no Excel pode criar números positivos e negativos. Por exemplo, para obter uma lista de números inteiros aleatórios de -10 a 10, insira a fórmula:

= ALEATÓRIOENTRE (-10; 10)

A função ALEATÓRIOENTRE está disponível no Excel 2019, 2016, 2013, 2010 e 2007. Em versões anteriores, você pode usar a fórmula ALEATÓRIO demonstrada acima.

Mais adiante neste tutorial, vou mostrar mais alguns exemplos de fórmulas de como usar a função ALEATÓRIOENTRE para gerar valores aleatórios diferentes de números inteiros.

Crie números aleatórios com casas decimais especificas

Embora a função ALEATÓRIOENTRE no Excel tenha sido projetada para retornar números inteiros aleatórios, é possivel forçá-la a retornar números decimais aleatórios com quantas casas decimais desejar.

Por exemplo, para obter uma lista de números com uma casa decimal, multiplique os valores inferior e superior por 10 e, em seguida, divida o valor retornado por 10:

= ALEATÓRIOENTRE (valor inferior * 10; valor superior * 10) / 10

A fórmula seguinte retorna números decimais aleatórios entre 1 e 50:

= ALEATÓRIOENTRE (1 * 10; 50 * 10) / 10

De maneira semelhante, para gerar números aleatórios entre 1 e 50 com 2 casas decimais, multiplique os argumentos da função ALEATÓRIOENTRE por 100 e, em seguida, divida o resultado por 100 também:

= ALEATÓRIOENTRE (1 * 100, 50 * 100) / 100

Como gerar datas aleatórias no Excel

Para retornar uma lista de datas aleatórias entre as duas datas fornecidas, use a função ALEATÓRIOENTRE em combinação com DATA.VALOR:

= ALEATÓRIOENTRE(DATA.VALOR(data de início);DATA.VALOR(data de término))

Por exemplo, para obter a lista de datas entre 1 de junho de 2021 e 30 de junho de 2021, insira a fórmula:

= ALEATÓRIOENTRE (DATA.VALOR ("01/06/2021"); DATA.VALOR ("30/06/2021"))

Como alternativa, pode ser usado a função DATA em vez de DATA.VALOR:

= ALEATÓRIOENTRE  (DATA (2021;6;1); DATA (2021;6;30))

Lembre-se de aplicar o formato de data às células para obter uma lista de datas aleatórias semelhante a esta:

Como inserir horas aleatórias no Excel

Lembrando que no sistema interno do Excel as horas são armazenadas como decimais, você pode usar a função ALEATÓRIO padrão do Excel para inserir números reais aleatórios e, em seguida, aplicar o formato da hora nas células:

Para retornar horas aleatórios de acordo com critérios, é preciso trabalhar com algumas fórmulas aleatórias mais específicas:

Fórmula 1. Gerar horas aleatórias em um intervalo específico

Para inserir tempos aleatórios entre qualquer momento especificado, use a função TEMPO ou VALOR.TEMPO em conjunto com a função ALEATÓRIO:

= TEMPO (hora de início) + ALEATÓRIO () * (TEMPO (hora de início) - TEMPO (hora de fim))
= VALOR.TEMPO (hora de início) + ALEATÓRIO () * (VALOR.TEMPO (hora de início) - VALOR.TEMPO (hora de fim))

Por exemplo, para inserir um horário aleatório entre 6h00 e 17h30, use uma das fórmulas seguintes:

= TEMPO (6;0;0) + ALEATÓRIO () * (TEMPO (17;30;0) - TEMPO (6;0;0))
= VALOR.TEMPO ("6:00 AM") + ALEATÓRIO () * (VALOR.TEMPO ("06:00") - VALOR.TEMPO ("17:30"))

Fórmula 2: Gerando datas e horas aleatórias

Para criar uma lista de datas e horas aleatórias, use uma combinação das funções ALEATÓRIOENTRE e DATA.VALOR:

= ALEATÓRIOENTRE (DATA.VALOR (data de início); DATA.VALOR (data de término)) + ALEATÓRIOENTRE (VALOR.TEMPO (hora de início) * 10000; DATA.VALOR (hora de término) * 10000) / 10000

Supondo que você queira inserir datas aleatórias entre 1º de junho de 2021 e 30 de junho de 2021 com um horário entre 7h30 e 18h, a fórmula abaixo vai te atender muito bem:

= ALEATÓRIOENTRE (DATA.VALOR ("01/06/2021"); DATA.VALOR ("30/06/2015")) + ALEATÓRIOENTRE (DATA.VALOR ("7:30") * 10000, DATA.VALOR ("18:00") * 10.000) / 10.000

Você também pode fornecer datas e horas usando as funções DATA e HORA:

= ALEATÓRIOENTRE (DATA (2021;6;1), DATA (2021;6;30)) + ALEATÓRIOENTRE (HORA (7;30;0) * 10000; HORA (18;0;0) * 10000) / 10000

Gerando letras aleatórias no Excel

Para retornar uma letra aleatória, uma combinação de três funções diferentes é necessária:

= CARACT (ALEATÓRIOENTRE (CÓDIGO (“A”), CÓDIGO (“Z”)))

Onde A é o primeiro caractere e Z é o último caractere no intervalo de letras que você deseja incluir (em ordem alfabética).

Na fórmula acima:

  • CÓDIGO retorna códigos numéricos para as letras especificadas.R
  • ALEATÓRIOENTRE considera os números retornados pelas funções CÓDIGO como os valores inferior e superior do intervalo.
  • CARACT converte os códigos aleatórios retornados por ALEATÓRIOENTRE nas letras correspondentes.

Como evitar que os números aleatórios sejam recalculados

Se deseja obter um conjunto permanente de números aleatórios, datas ou strings de texto que não muda toda vez que a planilha for recalculada, use uma das seguintes técnicas:

  1. Para interromper o recálculo das funções ALEATÓRIO ou ALEATÓRIOENTRE em uma célula, selecione essa célula, mude para a barra de fórmulas e pressione F9 para substituir a fórmula pelo seu valor.
  2. Para evitar que uma função aleatória do Excel seja recalculada, use o recurso Colar especial > Valores. Selecione todas as células com a fórmula aleatória, pressione Ctrl + C para copiá-las, clique com o botão direito no intervalo selecionado e clique em Colar especial > Valores. .

Como gerar números aleatórios únicos no Excel

Nenhuma das funções aleatórias do Excel pode produzir valores aleatórios exclusivos. Se deseja criar uma lista de números aleatórios sem duplicatas, execute estas etapas:

  1. Use a função ALEATÓRIO ou ALEATÓRIOENTRE para gerar uma lista de números aleatórios. Crie mais valores do que realmente precisa, porque alguns serão duplicatas a serem excluídas posteriormente.
  2. Converta fórmulas em valores conforme explicado no tópico acima.
  3. Remova valores duplicados usando a ferramenta embutida do Excel (veja Como remover duplicatas no Excel).

Conclusão

Neste artigo vimos diferentes maneira de criar números aleatórios no Excel.

O site deste pessoal aqui foi referência para este artigo. O site é muitoooo bacana com várias dicas legais para Excel, mas infelizmente o conteúdo está em inglês, o que não deixa de ser uma boa referência para quem conseguir acompanhar. Eu recomendo.

Eu sei que não é comum ler um artigo deste, como tutorial, e repetir para aprender, mas recomendo fortemente que você tome coragem de repetir todo o passo-a-passo. Eu penso que praticar é a melhor maneira de aprender e, embora pareça simples, é preciso se acostumar a navegar entre as telas e fórmulas do Excel para que no futuro você possa se tornar um usuário avançado.

Portanto, continue lendo mais sobre Dicas de Excel aqui.

2 comentários sobre “Como Gerar Números Aleatórios no Excel

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *