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.