Bom dia a todos!
Tenho esse código que faz sorteio dos números aleatório:
Sub GerarNumerosAleatoriosSemRepeticao()
Dim i As Integer
Dim j As Integer
Dim bRandomOk As Boolean
Dim valor_aleatorio As Integer
Dim valor_maior As Integer
Dim total_numeros_gerados As Integer
Dim total_numeros_para_gerar As Integer
Dim iControleGerar As Integer
Dim iColunaCelula As Integer
valor_maior = 42 'Informe o maior número que poderá ser gerado
total_numeros_para_gerar = 01 'Informe a quantidade de números aleatórios que deseja gerar
total_numeros_gerados = 0
iLinhaCelulaInicial = 9 'Informe a linha da primeira célula que será escrito o número
iColunaCelula = 7 'Informe a coluna. Exemplo: Coluna B = 2
iControleGerar = total_numeros_para_gerar + iLinhaCelulaInicial - 1
'Gera quantos números forem indicados na variável 'total_numeros_gerados'
For i = iLinhaCelulaInicial To iControleGerar
total_numeros_gerados = total_numeros_gerados + 1
'Fica executando a geração de um novo número enquanto houver duplicidade
Do
'Utilize a condição abaixo para verificar se ainda existem números possíveis a serem gerados
'Porque se i for maior que o valor limite, significa que todos os números já saíram. Então, sai do loop
If valor_maior < total_numeros_gerados Then
valor_aleatorio = 0
bRandomOk = True
Exit Do
End If
'Gera um novo número
Randomize 'Sempre utilize esta função antes de chamar Rnd
valor_aleatorio = Int((valor_maior * Rnd) + 1)
bRandomOk = True
'Verifica se já saiu este número
For j = iLinhaCelulaInicial To i
If Cells(j, iColunaCelula).Value = valor_aleatorio Then
bRandomOk = False
Exit For
End If
Next j
Loop While bRandomOk = False
'Escreve o número na célula
Cells(i, iColunaCelula).Value = valor_aleatorio
Next i
MsgBox "MESA SORTEADA... Próxima!", vbInformation
End Sub
Tenho o valor_maior = 42 , gostaria de adaptar ao código para começar a contar por exemplo do 15, como se fosse um aleatórioentre(15;42).
E fazer com que quando clicar no botão aparecesse o número em uma célula e o nome em outra .
É possível incluir neste mesmo código?
Desde já obrigado.
Atenciosamente,
Marciel Silva
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 12/02/2016 6:56 am