Pessoal estou prescindo de uma rotina que geri números aleatórios decimais em rol com 30 números que vai de 100 a 102,9 preciso criar aleatoriamente um conjunto com 8 números e sem repetição
EX 100,5 /102,3/ 100/ 101,9/ 102/ 100,1/ 102,6/ 100,8 Eu encontrei uma rotina na internet que faz isto com números inteiro e pelo que eu entendi tem que começar no numero 1 ser q tem com adaptar para minha necessidade se alguém poder me ajudar ficarei muito grato!
Código: Selecionar todos
Sub Aleatório()
Dim N, N01, N02, N03, N04, N05 As Integer
N = 10
ActiveSheet.Range("Q09").Value = Int((N * Rnd) + 1)
ActiveSheet.Range("Q10").Value = Int((N * Rnd) + 1)
Subir1:
N01 = Range("Q09").Value
N02 = Range("Q10").Value
If N02 = N01 Then
ActiveSheet.Range("Q10").Value = Int((N * Rnd) + 1)
If N01 = N02 Then
GoTo Subir1
End If
End If
ActiveSheet.Range("Q11").Value = Int((N * Rnd) + 1)
Subir2:
N03 = Range("Q11").Value
If (N03 = N01 Or N03 = N02) Then
ActiveSheet.Range("Q11").Value = Int((N * Rnd) + 1)
If (N03 = N01 Or N03 = N02) Then
GoTo Subir2
End If
End If
ActiveSheet.Range("Q12").Value = Int((N * Rnd) + 1)
Subir3:
N04 = Range("Q12").Value
If (N04 = N01 Or N04 = N02 Or N04 = N03) Then
ActiveSheet.Range("Q12").Value = Int((N * Rnd) + 1)
If (N04 = N01 Or N04 = N02 Or N04 = N03) Then
GoTo Subir3
End If
End If
ActiveSheet.Range("Q13").Value = Int((N * Rnd) + 1)
Subir4:
N05 = Range("Q13").Value
If (N05 = N01 Or N05 = N02 Or N05 = N03 Or N05 = N04) Then
ActiveSheet.Range("Q13").Value = Int((N * Rnd) + 1)
If (N05 = N01 Or N05 = N02 Or N05 = N03 Or N05 = N04) Then
GoTo Subir4
End If
End If
End Sub