Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
  • Avatar do usuário
Avatar do usuário
Por GENECI
Avatar
#11221
Boa tarde!

Considerando o arquivo anexo para sorteios de uma dezena por vez.
É possível usar o comando =aleatório para sortear números de 1 a 50.
De maneira que o número sorteado não (jamais) possa repetir.
Em outras palavras o comando aleatório sorteou o número 26 então o número 26 deve ficar fora de ser sorteado novamente.

Observação: Também pode ser uma fórmula que faça o procedimento.

Grato - Geneci
Avatar do usuário
Por alexandrevba
Avatar
#11223
Boa tarde!!

Use uma UDF baseado em:
http://www.ozgrid.com/VBA/RandomNumbers.htm
Código: Selecionar todos
Function RandLotto(Bottom As Integer, Top As Integer, Amount As Integer) As String

    Dim iArr As Variant
    Dim i As Integer
    Dim r As Integer
    Dim temp As Integer

    Application.Volatile

    ReDim iArr(Bottom To Top)

    For i = Bottom To Top
        iArr(i) = i
    Next i

    For i = Top To Bottom + 1 Step -1
        r = Int(Rnd() * (i - Bottom + 1)) + Bottom
        temp = iArr(r)
        iArr(r) = iArr(i)
        iArr(i) = temp
    Next i

    For i = Bottom To Bottom + Amount - 1
        RandLotto = RandLotto & " " & iArr(i)
    Next i
    RandLotto = Trim(RandLotto)
End Function
Como funciona:
Após inserir em módulo a função RandLotto, em uma célula digite
Código: Selecionar todos
=RandLotto(1,50,8)
, onde 1 é o numero inical até o número 50 e 8 é os números sortados que deseja que apareça.
|Att
Avatar do usuário
Por GENECI
Avatar
#11274
Boa tarde! Alexendrevba


Obrigado por atender a minha dúvida.

Segui o procedimento e algo deu errado. "Como sempre".
Por favor pode verificar aonde estar o erro através do arquivo anexo.
Ou salvar um arquivo com o código da UDF.
Obs. Uso o excel 2013.

Grato - GENECI.
Avatar do usuário
Por alexandrevba
Avatar
#11310
Bom dia!!

Abra o arquivo e veja se está ok.

Att
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord