Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Возвращает значение типа Variant (Long), определяющее положение первого вхождения одной строки в другую.

Некоторые примеры

Синтаксис

Instr ([начало, ]строка1, строка2[, сравнение] )

Функция InStr имеет следующие аргументы:

Аргумент

Описание

начало

Необязательный аргумент. Числовое выражение, которое задает начальное положение для каждого поиска. Если аргумент не задан, поиск начинается с первого символа. Если аргумент начало содержит значение NULL, возникает ошибка. Если задан аргумент сравнение, аргумент начало является обязательным.

строка1

Обязательный аргумент. Представляет собой строковое выражение, в котором выполняется поиск.

строка2

Обязательный аргумент. Искомое строковое выражение.

сравнение

Необязательный аргумент. Указывает тип сравнение строк. Если параметр compare имеет значение Null, возникает ошибка. Если параметр сравнение опущен, параметр OptionCompare определяет тип сравнения. Укажите допустимый LCID (LocaleID) для использования правил, относящихся к языковому стандарту, в сравнении.

Совет: Построитель выражений имеет IntelliSense, поэтому вы можете видеть, какие аргументы требуются для выражения.

Параметры

Аргумент compare может принимать следующие значения.

Константа

Значение

Описание

vbUseCompareOption

–1

Выполняется сравнение с помощью параметра инструкции Option Compare.

vbBinaryCompare

0

Выполняется двоичное сравнение.

vbTextCompare

1

Выполняется текстовое сравнение.

vbDatabaseCompare

2

Только в Microsoft Office Access 2007. Выполняется сравнение на основе сведений из базы данных.

Возвращаемые значения

Если

Возвращаемое значение

строка1 является пустой

0

строка1 равна NULL

NULL

строка2 является пустой

начало

строка2 равна NULL

NULL

строка2 не найдена

0

строка2 найдена в строке1

Позиция найденного соответствия

начало > строка2

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 для приложений (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.

См. также

Строковые функции и их использование

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×