Hola, lo que necesito es que si el programa "encuentra" una palabra en un texto haga una acción por ejemplo un msgbox, no puedo utilizar el If, ya que no el texto puede tener otros contenidos.
Thank.
Option Explicit
Private Sub Form_Load()
'// Case sensitive
If Not InStr(1, "Tu Texto", "Lo que buscas") = 0 Then
Debug.Print "WTF"
End If
'// Case insensitive
If Not InStr(1, UCase("Tu Texto"), UCase("Lo que buscas")) = 0 Then
Debug.Print "WTF"
End If
End Sub
Hola, sin if,usa Case :P
Imagino !!!!! cosa que no tendria que pero bueno dejemoslo ahi, que el comentario del if es simplemente porque el no quire comparar una frase exacta sino ver si una palabra/s existen en un texto
Exacto, es lo que dice "cobein", al principio no me iba, luego ya cambié las cositas un poquito y ya me va genial, pongo el código:
Option Explicit
Private Sub Command1_Click()
'Si no encuentra la letra "a" pasa abajo
If Not InStr(1, Text1, "a") = 0 Then
MsgBox "Econtré la letra a"
Else
MsgBox "No encontré la letra a"
End If
End Sub
Solo por curiosidad seba123neo, ¿Cómo sería con "Case"? Nunca está de más aprender.
Option Explicit
Private Sub Form_Load()
Select Case True
Case "mi texto tiene esto" Like "*esto*"
Debug.Print "SE ACA TA"
Case Else
Debug.Print "NO TA"
End Select
End Sub
a listo,ahora caigo :),pues algo asi:
Option Explicit
Private Sub Command1_Click()
Select Case InStr(1, Text1, "a")
Case Is = 0
MsgBox "No encontré la letra a"
Case Is <> 0
MsgBox "encontré la letra a"
End Select
End Sub
saludos.
Muchas gracias, unas preguntas para aprender ya que no encontré en google:
¿Qué hace el "Debug.Print"? Ya que imprimir algo en pantalla sería más lógico en C no en VB.
¿La función "Not InStr" que hace exactamente?, ¿Tiene otra función?
Debug.Print Imprime un dato en el Debug o Inmediato o como quieras llamarlo (Ctrl + G para abrirlo)
Not InStr son 2 cosas Not es simplemente una negacion Not 1 = 0 es lo mismo que 1 <> 0
Y Instr es para bucar una cadena dentro de otra.
Mmm no entendí eso de
"Debug.Print Imprime un dato en el Debug o Inmediato o como quieras llamarlo (Ctrl + G para abrirlo)"
¿Cuando hay que hacer lo de Crtl + G?
Citar¿Cuando hay que hacer lo de Crtl + G?
Cuando das al "PLAY!" para probar tu aplicacion y debuggearla xD.
Te saldría algo así:
(http://img395.imageshack.us/img395/8453/upei2.jpg)
salu2 ;)
InStr te devuelve un resultado(integer)si es 0 es porque no encontro la cadena a buscar y si es diferente de 0 te devuelve la posicion de la palabra a buscar...
saludos.
Ok, ya entendí todo, gracias y disculpen las molestias.