Cadenas Aleatorias? [ayudita easy]

Iniciado por 3k1n0x, 29 Febrero 2008, 01:02 AM

0 Miembros y 2 Visitantes están viendo este tema.

3k1n0x

hola, se que es facil pero no se, como hacer para seleccionar una cadena aleatoria, no se como usar randomize en este caso para despues escribir la cadena, es para cambiar  mi direccion mac utilizando un metodo chapuzero, x ejemplo se tienen

uno = "cadena blabla"
dos = "2da cadena kdla"
tres = "3ra"
' y mas

se debe seleccionar una al azar para despues usar eso

debe ser

dim azar
randomize
azar = '>aki debe ser lo de randomize creo<'
sendkeys (azar)


km puedo hacer eso, una ayudita plz, salu2s
T3fL0n -> 3k1n0x

naderST

Hola esta puede ser una manera de hacerlo


Option Explicit

Private Sub Command1_Click()
Dim Cadenas() As Variant
Cadenas = Array("cadena01", "cadena02")
MsgBox Cadenas(Int(Rnd() * (UBound(Cadenas) + 1)))
End Sub

3k1n0x

genial che naderst justo lo q buscaba !! muuchas gracias bye salu2s ;)
T3fL0n -> 3k1n0x

3k1n0x

hay un problema si alguien sabe plz, sucede que si da el numero aleatorio, pero siempre es el mismo y debe ser diferente cada ves q se ejecute el prog  :huh:
T3fL0n -> 3k1n0x

naderST

Guarda el ultimo numero que genero, luego que vuelvan a abrir la aplicacion genere un numero difrente al ultimo numero que genero.

Ch3ck

Esto?
Private Sub CommandButton1_Click()
Randomize
Numero = Int(Rnd * 50) + 1
MsgBox Numero
End Sub


Saludos.

naderST

Si Ch3ckM4t3r creo que eso era lo que queria porque el codigo que le di siempre genera el mismo numero al abrir el programa.

3k1n0x

Cita de: naderST en 29 Febrero 2008, 01:43 AM
Guarda el ultimo numero que genero, luego que vuelvan a abrir la aplicacion genere un numero difrente al ultimo numero que genero.

eso debe ser  :), voy a probar guardando el dato en un txt para que al abrir compare el dato, salu2s

Cita de: Ch3ckM4t3r en 29 Febrero 2008, 01:46 AM
Esto?
Private Sub CommandButton1_Click()
Randomize
Numero = Int(Rnd * 50) + 1
MsgBox Numero
End Sub


Saludos.

si mas o menos es lo q busco no exctamnte pero si, salu2s
T3fL0n -> 3k1n0x

Chefito

#8
Uiuiuiuiui, clonando macs?  ;D. Esto te da una Mac completa aleatoria:
Private Sub Form_Load()
Randomize
Dim Numero As String, Mac As String
For n = 0 To 5
    Numero = Hex(Int(Rnd * 256))
    Mac = Numero & Mac
Next
MsgBox Mac
End Sub


Y lo mismo pero separados cada par de dígitos por dos puntos:
Private Sub Form_Load()
Randomize
Dim Numero As String, Mac As String
For n = 0 To 5
    Numero = Hex(Int(Rnd * 256))
    Mac = Mac & ":" & Numero
Next
Mac = Right(Mac, 17)
MsgBox Mac
End Sub

Puedes enviar el par de dígitos metiendo la función sendkeys dentro del for .... next, sustituyendo la linea Mac = Numero & Mac por sendkeys(numero), si es lo que te interesa claro. Si tienes que enviarla entera, puedes poner el sendkeys(mac) después del next. Si quieres trabajar con los 6 bloques de dos caracteres, utiliza una matriz de 6 elementos y almacenalos ahi.
Saludos.
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.

Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada ;)

Ch3ck

naderST tu codigo está bien, solo hay que colocarle mas rango.

He hecho otra version jeje
Private Sub CommandButton1_Click()
Dim Numero() As String
Mensaje = "Vacio;Numero1;Numero2;Numero3"
Numero = Split(Mensaje, ";")
Randomize
NumeroA = Int(Rnd * 3) + 1
MsgBox Numero(NumeroA)
End Sub


Porque lo de las MACS?????

Saludos...