Метод WorksheetFunction.SearchB (Excel)

Search и SearchB находят одну текстовую строку во второй текстовой строке и возвращают номер начальной позиции первой текстовой строки из первого символа второй текстовой строки.

Синтаксис

expression. SearchB (Arg1, Arg2, Arg3)

Выражение Переменная, представляющая объект WorksheetFunction .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Arg1 Обязательный String Find_text — текст, который вы хотите найти.
Arg2 Обязательный String Within_text — текст, в котором требуется выполнить поиск find_text.
Arg3 Необязательный Variant Start_num — номер символа в within_text, с которого вы хотите начать поиск.

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

Double

Замечания

Поиск предназначен для языков, использующих однобайтовый набор символов (SBCS), тогда как SearchB предназначен для языков, использующих двухбайтовый набор символов (DBCS). Параметр языка по умолчанию на компьютере влияет на возвращаемое значение следующим образом:

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

  • SearchB считает каждый двухбайтовый символ как 2, если вы включили редактирование языка, поддерживающего DBCS, а затем задает его в качестве языка по умолчанию. В противном случае SearchB считает каждый символ как 1.

  • К языкам, поддерживающим DBCS, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

Используйте поиск и Поиск В, чтобы определить расположение символа или текстовой строки в другой текстовой строке, чтобы можно было использовать функции Mid и MidB или Replace и ReplaceB для изменения текста.

Для поиска и Поиска В регистр регистра не учитывается. Если вы хотите выполнить поиск с учетом регистра, можно использовать функции Find и FindB.

Используйте подстановочные знаки, вопросительный знак (?) и звездочку (*) в find_text. Вопросительный знак соответствует любому одному символу; звездочка соответствует любой последовательности символов. Если вы хотите найти фактический вопросительный знак или звездочку, введите тильду (~) перед символом.

Если find_text не найден, #VALUE! Возвращается значение ошибки.

Если start_num опущен, предполагается, что значение равно 1.

Если start_num не больше 0 (ноль) или больше длины within_text, #VALUE! Возвращается значение ошибки.

Используйте start_num, чтобы пропустить указанное количество символов. Используя поиск в качестве примера, предположим, что вы работаете с текстовой строкой AYF0093.YoungMensApparel. Чтобы найти номер первого "Y" в описательной части текстовой строки, задайте start_num равным 8, чтобы не выполнять поиск в части текста с серийным номером. Поиск начинается с символа 8, находит find_text на следующем символе и возвращает число 9.

Поиск всегда возвращает количество символов с начала within_text, подсчитывая пропущенные символы, если start_num больше 1.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.