Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Повертає значення типу Variant (Long), яке задає положення першого входження одного рядка всередині іншого.

Див. приклади

Синтаксис

InStr ([start, ] string1, string2 [, compare ] )

Синтаксис функції InStr має такі аргументи:

Аргумент

Опис

start

Необов’язковий аргумент. Числовий вираз, який задає початкове положення для кожного пошуку. Якщо його не задано, пошук починається з першого символу. Якщо аргумент start містить Null-значення, стається помилка. Аргумент start є обов’язковим, якщо задано аргумент compare.

string1

Обов’язковий аргумент. Рядковий вираз, який потрібно знайти.

string2

Обов’язковий аргумент. Шуканий рядковий вираз.

compare

Необов’язковий аргумент. Визначає тип порівняння рядків. Якщо аргумент compare має Null-значення, стається помилка. Якщо аргумент compare не задано, параметр OptionCompare визначає тип порівняння. Укажіть дійсний код мови (LocaleID), щоб використовувати спеціальні мовні правила для порівняння.

Порада.: У побудовнику виразів є функція IntelliSense, яка дає змогу побачити, які аргументи потрібні для виразу.

Параметри

Параметри аргументу compare:

Константа

Значення

Опис

vbUseCompareOption

–1

Виконує порівняння за допомогою параметра оператора Option Compare.

vbBinaryCompare

0

Виконує двійкове порівняння.

vbTextCompare

1

Виконує текстове порівняння.

Значення, що повертаються

Умова

Значення, яке повертає функція InStr

string1 має нульову довжину

0

string1 має Null-значення

Null-значення

string2 має нульову довжину

start

string2 має Null-значення

Null-значення

string2 не знайдено

0

string2 знайдено в string1

Положення, у якому знайдено збіг

start > string2

0

Примітки

Функція InStrB використовується з даними типу "байт", що містяться в рядку. Функція InStrB повертає не положення символу першого входження одного рядка в іншому, а положення даних типу "байт".

Приклади

Використання функції InStr у виразі    Функцію InStr можна використовувати будь-де, де можна використовувати вирази. Наприклад, якщо потрібно знайти положення першої крапки (.) у полі, яке містить IP-адреси (під назвою IPAddress), можна скористатися функцією InStr, як-от:

InStr(1,[IPAddress],".")

Функція InStr аналізує кожне значення в полі IPAddress і повертає положення першої крапки. Отже, якщо перша частина IP-адреси – 10., функція поверне значення 3.

Після цього можна скористатись іншими функціями, які працюють на основі виводу функції InStr, щоб видобути частину IP-адреси, яка передує першій крапці, як-от:

Left([IPAddress],(InStr(1,[IPAddress],".")-1))

У цьому прикладі функція InStr(1,[IPAddress],".") повертає положення першої крапки. Віднімання 1 визначає кількість символів перед першою крапкою (у цьому випадку – 2). Після цього функція Left видобуває стільки символів із лівої частини поля IPAddress і повертає значення 10.

Використання функції InStr у коді VBA    

Примітка.: У прикладах нижче показано використання цієї функції в модулі Visual Basic for Applications (VBA).

У цьому прикладі функцію InStr використано, щоб повернути положення першого входження одного рядка в іншому.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"    ' String to search in.
SearchChar = "P"    ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)    
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar)    ' Returns 9.
MyPos = Instr(1, SearchString, "W")    ' Returns 0.

Додаткові відомості

Рядкові функції та їх використання

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.