Função ALEATÓRIOENTRE


#1

Bom dia pessoal do fórum!

Existe alguma maneira de utilizar as funções ALEATÓRIO e ALEATÓRIOENTRE sem que elas fiquem se modificando em cada calculada da planilha?


#2

Acredito que não. A não ser que você desligue o cálculo automático da planilha e calcule manualmente conforme a necessidade. (não é muito recomendável).
Ou após gerar os números aleatórios, copie o cole os mesmos como valores.


#3

Única solução que encontrei também. Desligar o cálculo automático não é viável mesmo.

Colar especial como valores funciona bem para meu caso.

Seria interessante no Excel uma opção para desativar os cálculos automáticos apenas nas células desejadas. :sunglasses:


#4

Sei que não é bem isto que você queria, mas dependendo do que você vai fazer resolve, pois já precisei gerar números aleatórios que não mudassem a cada rodada, e quando eu precisasse de nova lista, criava em outras células.
Crie um botão em uma planilha nova e crie a sua macro para gerar os números randômicos que você necessitar, guardando estes em células, por exemplo de A1 até A100. Depois desabilite ou exclua este botão para não ser executado novamente e use a lista que foi criada pela macro.
Sub macro1()
For i = 1 To 100
a = Rnd(100)
Cells(i, 1) = a
Next
End Sub


#5

@lporto, para meu caso é mais viável utilizar o colar especial só com valores mesmo. Mas obrigado pela sugestão!

Por curiosidade, como eu poderia alterar essa macro para gerar números aleatórios de 100 a 200 em vez de 0 a 1?

Valeu!


#6

@Yure
Primeiro você deve gerar numero de 0 a 1, utilizando RND(101) para gerar o numero 1 também.
Multiplique este numero por 101 para deslocar a virgula. Assim você tem números de 0 a 100, mas você quer de 100 a 200, então some 100 ao numero.
Sub macro1()
For i = 1 To 1000
a = Rnd(101) * 101
Cells(i, 1) = Int(a) + 100
Next
End Sub
Dá para arredondar também, mas eu prefiro assim, fazendo *101
Ah, se vc multiplicar por 100, não terá o numero 200.
abs


#7

Obrigado pelo conhecimento amigo!


#8

disponha amigo… Conhecimento não pode morrer com a gente…
abs