domanda semplice su visual basic

Pubblicità

andrea96

Utente Attivo
Messaggi
190
Reazioni
7
Punteggio
38
devo fare verificare al programma se la textbox1 contiene una parola qualsiasi presente nella textbox2 ( usando if textbox1.text.contains(textbox2.text)= true non funziona perchè verifica solo se il testo è uguale :muro:)
 
Guarda per fare questa cosa ci sono funzioni più appropriate tipo "Instr" appartenente alla classe String.

Instr (start,StringaNellaQualeCercare,StringaDaCercare,vbTextCompare)

start è un Integer e deve essere maggiore di 0 altrimenti genera un eccezione.

Potresti fare un programma cosi:
Codice:
'Codice in VB6

Dim pos As Integer
pos = 0        'lo inizializzi a 0 cosi puoi vedere se è stata trovata la stringa
pos = InStr(1, CercaIN.Text, DACercare.Text, vbTextCompare)   'chiamata al metodo Instr(....)

If pos <> 0 Then MsgBox "Trovato" Else MsgBox "Non Trovato"   'Restituzione del risultato

La funzione Instr restituisce praticamente la posizione della prima occorrenza della stringa cercata nel testo in cui cercare, quindi siccome la posizione 0 non è ammessa, se la funzione trova la stringa, restituirà sicuramente una posizione diversa da 0.
La puoi associare alle azioni di un commandButton per esempio all'evento Click....
Nel caso specifico puoi fare una funzione che sfrutta questo codice e ti dice se nel text2 c'è una qualsiasi parola del text1 facendogli esaminare tutto parola per parola usando la funzione split...
Potresti fare una cosa del genere
Codice:
Dim a() As String
Dim i As Integer
Dim pos As Integer

'spezzo la stringa della textbox in un array stringhe contenente tutte le parole
a = Split(Text1.Text)  
For i = 0 To UBound(a)   'scansiona tutto l'array

pos = 0
pos = InStr(1, Text2.Text, Text1.Text, vbTextCompare)

If pos <> 0 Then MsgBox "Esiste: " + a(i) Else MsgBox "Non Esiste"

Next i

Spero di esserti stato utile...:asd:
 
Ultima modifica:
Guarda per fare questa cosa ci sono persone più appropriate tipo "Instr" appartenente alla classe String.

Instr (start,StringaNellaQualeCercare,StringaDaCercare,vbTextCompare)

start è un Integer e deve essere maggiore di 0 altrimenti genera un eccezione.

Potresti fare un programma cosi:
Codice:
'Codice in VB6

Dim pos As Integer
pos = 0        'lo inizializzi a 0 cosi puoi vedere se è stata trovata la stringa
pos = InStr(1, CercaIN.Text, DACercare.Text, vbTextCompare)   'chiamata al metodo Instr(....)

If pos <> 0 Then MsgBox "Trovato" Else MsgBox "Non Trovato"   'Restituzione del risultato

La funzione Instr restituisce praticamente la posizione della prima occorrenza della stringa cercata nel testo in cui cercare, quindi siccome la posizione 0 non è ammessa, se la funzione trova la stringa, restituirà sicuramente una posizione diversa da 0.
La puoi associare alle azioni di un commandButton per esempio all'evento Click....
Nel caso specifico puoi fare una funzione che sfrutta questo codice e ti dice se nel text2 c'è una qualsiasi parola del text1 facendogli esaminare tutto parola per parola usando la funzione split...
Potresti fare una cosa del genere
Codice:
Dim a() As String
Dim i As Integer
Dim pos As Integer

'spezzo la stringa della textbox in un array stringhe contenente tutte le parole
a = Split(Text1.Text)  
For i = 0 To UBound(a)   'scanziona tutto l'array

pos = 0
pos = InStr(1, Text2.Text, Text1.Text, vbTextCompare)

If pos <> 0 Then MsgBox "Esiste: " + a(i) Else MsgBox "Non Esiste"

Next i

Spero di esserti stato utile...:asd:

proverò cosi :thanks:
 
Pubblicità
Pubblicità
Indietro
Top