Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: CRAB en 31 Agosto 2005, 19:02 pm



Título: PROBLEMA CON FUNCIÓN CASE:
Publicado por: CRAB en 31 Agosto 2005, 19:02 pm
Hola, tengo un problema con la función case. Es el siguiente:

Tengo dos TextBox, cuando en el Text2 aparezca=

                       02 45 67 54 18 12 90 45 73

En el Text1 ha de aparecer su correspondiente en letras, el problema es que a una letra le doy tres valores diferentes, y he probado de hacerlo, pero solo me substituye el número por la letra si solo le doy un valor y si solo hay escrito eso en el Text2, si hay algo más escrito, no me va.

Gracias por la ayuda gente.


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: NYlOn en 1 Septiembre 2005, 00:48 am
bueno, la verdad se entendio poco y nada, pero vamos a ver si adivino...
yo hice algo parecido para codificar un texto
hace esto (suponiendo que cada 2 numeros tenes una letra)

Código:
Private Sub Command1_Click ()
text2.text = "" 'limpia el Text2

For i = 0 to Len(Text1.Text)
Select Case Mid(Tetxt1.Text, i, 2) 'esto va escaneando cada 2 letras
Case 02 'si encontro el 02
text2.text = text2.text + "A" 'pone la letra A en el Text2
case 45 'si encontro el 45
text2.text = text2.text + "B" 'pone la letra B en el Text2
end select
Next i
End Sub

con este code no importa en que posicion se encuentren los numeros, lo que si tenes que poner todos los "Cases" con cada letra del abcdario...
espero que se haya entendido, sino postea ;)

un saludo y SUERTE !

G0nz4


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: CRAB en 1 Septiembre 2005, 20:19 pm
Hola NYlOn, muchísimas gracias por tu respuesta, me has sido de una gran ayuda, de todas maneras he cambiado un poco el código porq no me iva:

Private Sub Command1_Click ()
text2.text = "" 'limpia el Text2

For i = 1 to Len(Text1)
Select Case Mid(Tetxt1, i, 2)     'esto va escaneando cada 2 letras
Case "02"                               'si encontro el 02
text2.text = text2.text + "A"     'pone la letra A en el Text2
case 45                                   'si encontro el 45
text2.text = text2.text + "B"     'pone la letra B en el Text2
end select
Next i
End Sub

Muchas gracias, te lo agradezco mucho.



Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: Crack_X en 1 Septiembre 2005, 20:44 pm
Utiliza & para encadenar strings en vez de +.


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: NYlOn en 1 Septiembre 2005, 22:21 pm
De nada Crab, que bueno que te sirvio   :)

che Crack_X me podes explicar como es eso de los signos ??
tengo entendido que cada signo corresponde a una variable, pero no se cual es cual =S
& es String no ?
si me podes armar una listita estaria muy agradecido, ya que suelo usar el "+" y hay veces que me tira errores, y sospecho que puede ser x esto...

bueno, gracias de antemano

un abraz0

 G0nz4


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: Numeros en 1 Septiembre 2005, 22:27 pm
% - Integer

& - Long

! - Single

# - Double

@ - Currency

$ - String



Salu2


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: NYlOn en 2 Septiembre 2005, 00:45 am
gracias numerin :D

un abraz0

G0nz4


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: Slasher-K en 2 Septiembre 2005, 02:19 am
Lo que decía Crack_X es que para concatenar dos cadenas se debe utilizar "&" en lugar del signo "+", porque puede dar un error de tipos de datos, ya que el "+" se utiliza para sumar.

Saludos.


Título: Re: PROBLEMA CON FUNCIÓN CASE:
Publicado por: NYlOn en 3 Septiembre 2005, 21:28 pm
ahaha
ahora entiendo ;D

iwal me sirvio la listita ^^

un abraz0

G0nz4