Funkcja VBA INSTR zwraca liczbę całkowitą odpowiadającą pierwszej znalezionej pozycji wartości w ciągu znaków (lub 0, jeśli nie znaleziono dopasowania).
InStr(pozycja_początkowa, tekst, wartość_wyszukiwania)
Lub
InStr(pozycja_początkowa, tekst, wartość_wyszukiwania, wielkość liter)
Wykorzystanie funkcji InStr do ustalenia pozycji słowa „excel” (rozpoczynając wyszukiwanie od pierwszego znaku nazwy serwisu):
Sub InStrExample1()
sitename = "www.moonexcel.com.ua"
'Pozycja słowa „excel” w sitename
position = InStr(1, sitename, "excel")
MsgBox position 'Powroty: 9
End Sub
Używając funkcji InStr do znalezienia pozycji słowa „EXCEL” (tym razem dodając wartość „1” do 4. argumentu, aby zignorować wielkość liter):
Sub InStrExample2()
sitename = "www.moonexcel.com.ua"
'Pozycja słowa „EXCEL” w sitename (wielkość liter nie ma znaczenia)
position = InStr(1, sitename, "EXCEL", 1)
MsgBox position 'Powroty: 9
End Sub
Funkcji InStr można również użyć do określenia, czy nazwa witryny zawiera ciąg wyszukiwania:
Sub InStrExample3()
sitename = "www.moonexcel.com.ua"
If InStr(1, sitename, "excel") > 0 Then
MsgBox "Więc!"
End If
End Sub
W tym przykładzie, jeśli pozycja zostanie znaleziona, funkcja zwróci liczbę większą niż 0 i wyświetli okno dialogowe.