Pregunta:
Duda sobre Visual Basic... (Condición IF)?
Santiago
2010-07-24 17:22:57 UTC
Esto haciendo muchisimas condiciones en un programa en el que llevo varias semanas trabajando.
Y esto me esta volviendo loco!

Fuera de mi programa, un ejemplo de que es lo que quiero lograr:

Tengo un Textbox con la palabra "HOLA"
entonces, quiero evaluar ese textbox con una condición IF

Si es HOLA entonces aparece un msgbox que dice:
"El textbox contiene la palabra HOLA!"

Pero, si pongo Hola, o... HoLa... o hOla. o asi...
Ya no es valida la condición IF con el texto "HOLA"

Si no que tendria que muchos "OR"

Si es "HOLA" o "Hola" o "hOla" o "hoLa" y ven como es un rompedero de cabeza?

No habrá alguna forma de que la condición no le importe que este en mayusculas o minusculas las letras y las tome por igual?

Por ejemplo en C++ yo usó: STRCMPI en lugar e STRCMP para comparar cadenas sin importar si cambian en ese aspecto.

Muchas gracias!
Tres respuestas:
Claudia
2010-07-26 16:20:02 UTC
No es necesario que evalúes todas las posibles combinaciones, puede convertir toda tu cadena a mayúsculas o minúsculas, por ejemplo, para mayúsculas:



IF UCase(Text1.Text) = "HOLA" Then

Msgbox "El textbox contiene la palabra HOLA!"

Else

Msgbox "No es Hola"

En If



lo mismo funciona con minúsculas al usar LCase.



Si también puede haber espacios, que afectarían al String, puedes eliminarlos usando Trim:



IF UCase(Trim(Text1.Text)) = "HOLA" Then [...]
?
2010-07-25 00:41:09 UTC
MIRA LO QUE VAS HACER ES CLIC EN EL TEXT Imaginemos que es el text 1 entonces le das doble clic y luego en el codigo elijes KEYPRESS



Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

If Text1 = "hola" Then

MsgBox "hola", A + 48, "GIANMARCO"

Else

MsgBox "SOLO SE ADMITE LA PALABRA hola PUEDE QUE LO ESCRIBIO MAL O ESTA EN MAYUSCULAS", A + 48, "GIANMARCO"

End If

End If

End Sub



copia y pega esto





pero si deseas alguna otra ayuda

puedes agregarme



gianmarco_acuario@hotmail.com

estoy para ayudarte
2010-07-25 00:33:32 UTC
Que tal amigo, puedes hacer algo mas sencillo, convertir tu cadena a mayusculas o minisculas y luego compararla, es decir:



if Ucase(text1.text)="HOLA" then msgbox text1.text


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...