La funzione VBA INSTR restituisce un numero intero corrispondente alla prima posizione trovata del valore nella stringa di caratteri (o 0 se non viene trovata alcuna corrispondenza).
InStr(posizione_iniziale, testo, valore_ricerca)
O
InStr(posizione_iniziale, testo, valore_ricerca, maiuscole e minuscole)
Utilizzando la funzione InStr per determinare la posizione della parola "excel" (iniziando la ricerca dal carattere 1 del nome del sito):
Sub InStrExample1()
sitename = "www.moonexcel.com.ua"
'Posizione della parola "excel" in sitename
position = InStr(1, sitename, "excel")
MsgBox position 'Ritorni: 9
End Sub
Utilizzando la funzione InStr per trovare la posizione della parola "EXCEL" (questa volta aggiungendo il valore "1" al quarto argomento per ignorare il caso):
Sub InStrExample2()
sitename = "www.moonexcel.com.ua"
'Posizione della parola "EXCEL" in sitename (senza distinzione tra maiuscole e minuscole)
position = InStr(1, sitename, "EXCEL", 1)
MsgBox position 'Ritorni: 9
End Sub
La funzione InStr può essere utilizzata anche per determinare se il nome di un sito contiene una stringa di ricerca:
Sub InStrExample3()
sitename = "www.moonexcel.com.ua"
If InStr(1, sitename, "excel") > 0 Then
MsgBox "COSÌ!"
End If
End Sub
In questo esempio, se la posizione viene trovata, la funzione restituisce un numero maggiore di 0 e visualizza una finestra di dialogo.