Generar números aleatorios que no se repitan

Respuesta de
a
Usuario
Oye Leo como puedo generar números aleatorios que no se repitan, es que a mi se me repiten 12341, y pues no quiero se repita ningún numero.
Gracias
Experto
Hola
Para eso puedes generar una matriz de la cantidad de numero que elijes aleatoriamente y marcas cuales salieron, así elijes otro hasta encontrar uno que no haya salido, te doy un ejemplo con un numero aleatorio de 1 a 10:

Declara esto en el procedimiento general:

Dim matriz(10) As Boolean
Dim Pasos As Byte

Ahora en un boton puedes colocar este codigo:

If Pasos = 10 Then Exit Sub
Randomize
Do
numero = Int((10 * Rnd) + 1)
If matriz(numero) = False Then
matriz(numero) = True
Pasos = Pasos + 1
Exit Do
End If
Loop
Text1.Text = numero

Agrega un TextBox al formulario y ejecuta la aplicación, veras que al hacer click en el botón te mostrara cada vez un numero distinto pero nunca uno repetido, la rutina no funcionara más si ya aparecieron los 10 números (variable Pasos)
Espero te sirva.
Saludos, Leo
Usuario
Gracias.