Ostatnio zaktualizowano: 14 listopada, 2017 przez admin
1. Funkcja InStr VBA – Opis
Funkcja InStr VBA zwraca pozycję znaku w ciągu znaków. Jeśli chcemy, którą pozycje w danym tekscie zajmuje znak, lub wyraz powinniśmy skorzystać właśnie z tej funkcji. Funkcja może także służyć do szukania wyrazów w tekcie i wycinania ich w połączeniu z funkcj Mid VBA. Jeśli chcielibyśmy znleźć pozycję ciągu znaków w danym tekscie zaczynając od końca, powinniśmy skorzystać z funkcji InstrRev.
2. Funkcja VBA InStr – Składnia
'datatalk.pl InStr([Start], [String1], [String2], [Compare As VbCompareMethod = vbBinaryCompare])
Start: Pozycja w tekscie, od której zaczynamy wyszukiwanie.
String1: Ciąg tekstowy, w którym szukamy ciągu znaków.
String2: Szukany ciąg znaków.
Compare As VbCompareMethod: Argument opcjonlny. Typ porównania. Wartość default to 0. Wartości dla argumentu przedstawia poniższa tabela:
Stała | Wartość | Opis |
vbBinaryCompare | 0 | Porównanie binarne. Uwzględnia wielkość znaków. |
vbTextCompare | 1 | Porównanie tekstowe. Nie uwzględnia wielkości znaków |
Zwrot funkcji: Number / Wartość liczbowa.
3. Funkcja VBA InStr – Przykład
Jak używać funkcji InStr w VBA Excel? Poniżej przykłady użycia funkcji InStr w Edytorze VisualBasic.
Przykład 1: Przykład użycia funkcji InStr VBA – wynik w oknie MsgBox.
'datatalk.pl Dim strValue As String strValue = "Nauka funkcji VBA" MsgBox InStr(1, strValue, "f") MsgBox InStr(1, strValue, "a") MsgBox InStr(1, strValue, "A", vbBinaryCompare) MsgBox InStr(1, strValue, "A", vbTextCompare)
Przykład 2: VBA InStr – przykład funkcji – wynik w arkuszu Excel.
'datatalk.pl Dim strValue2 As String strValue2 = "Nauka funkcji VBA" Range("A1") = InStr(6, strValue2, "f") Range("A2") = InStr(6, strValue2, "a") Range("A3") = InStr(6, strValue2, "A", vbBinaryCompare) Range("A4") = InStr(6, strValue2, "A", vbTextCompare)
Przykład 3: VBA InStr – Jak wyciągnąć tekst z innego tekstu. Tekst pomiędzy dwoma spacjami.
'datatalk.pl Dim strValue3 As String Dim intValue1 As Integer Dim intValue2 As Integer strValue3 = "Nauka funkcji VBA" intValue1 = InStr(1, strValue3, " ") intValue2 = InStr(InStr(1, strValue3, " ") + 1, strValue3, " ") MsgBox Mid(strValue3, intValue1, intValue2 - intValue1) Range("A1") = Mid(strValue3, intValue1, intValue2 - intValue1)

4. Funkcja VB InStr – Dodatkowe informacje
- brak
5. Funkcja InStr VisualBasic – Gdzie stosować?
Funkcję możemy stosować w: Excel 2003, Excel 2007, Excel 2010, Excel 2013, Excel 2016.
Artykuł jest częścią listy funkcji VBA Excel. Listę wszystkich funkcji VBA znajdziesz pod tym adresem: Funkcje VBA.