У цій статті подано синтаксис формули й описано використання функцій SEARCH і SEARCHB у програмі Microsoft Excel.
Опис
Функції SEARCH і SEARCHB знаходять один текстовий рядок у межах другого рядка та повертають число стартової позиції першого текстового рядка з першого символу другого текстового рядка. Наприклад, для знаходження позиції букви "n" у слові "printer" можна використовувати таку функцію:
=SEARCH("n";"printer")
Ця функція повертає значення 4, тому що "n" — це четвертий символ у слові "printer".
Ви також можете шукати слова в інших словах. Наприклад, функція
=SEARCH("base";"database")
повертає значення 5, тому що слово "base" починається з п’ятого символу слова "database". Функції SEARCH і SEARCHB можна використовувати для визначення місця розташування символу або текстового рядка всередині іншого текстового рядка, а потім використовувати функції MID і MIDB для повернення тексту або функції REPLACE і REPLACEB для змінювання тексту. Ці функції показані у Прикладі 1 цієї статті.
:
-
Ці функції можуть бути доступні не в усіх мовних версіях.
-
SEARCHB рахує 2 байти на символ, лише якщо мову DBCS встановлено мовою за промовчанням. В інших випадках SEARCHB працює так само, як і SEARCH, рахуючи 1 байт на символ.
До мов, які підтримують DBCS, належать японська, китайська (спрощена), китайська (традиційна) і корейська.
Синтаксис
SEARCH(шук_текст;текст_перегляду;[поч_позиція])
SEARCHB(шук_текст;текст_перегляду;[поч_позиція])
Синтаксис функцій SEARCH і SEARCHB має такі аргументи:
-
Шук_текст — обов’язковий аргумент. Текст, який потрібно знайти.
-
Текст_перегляду — обов’язковий аргумент. Текст, у якому потрібно знайти значення аргументу шук_текст.
-
Поч_позиція — необов’язковий аргумент. Номер символу аргументутекст_перегляду, з якого потрібно розпочати пошук.
Примітка
-
Функції SEARCH і SEARCHB не враховують регістр. Якщо потрібно включити цей параметр до пошуку, можна скористатися функціями FIND і FINDB.
-
В аргументі шук_текст можна використовувати символи узагальнення: знак питання (?) і зірочку (*). Знак питання відповідає будь-якому символу; зірочка відповідає будь-якій послідовності символів. Якщо потрібно знайти один із цих символів, слід поставити перед ними символ тильда (~).
-
Якщо значення find_text не знайдено, #VALUE! повертається значення помилки.
-
Якщо аргументпоч_позиція пропущено, приймається значення 1.
-
Якщо start_num не більше 0 (нуля) або більше довжини аргументу within_text , #VALUE! повертається значення помилки.
-
Щоб пропустити певну кількість символів, задайте аргумент поч_позиція. Для прикладу роботи з функцією SEARCH припустимо, що існує текстовий рядок "AОF0093.ОдягДляЮнаків". Для пошуку першої букви "О" в описовій частині тексту, задайте для аргументу поч_позиція значення 8, щоб не шукати в тій частині тексту, де вказано серійний номер (у цьому випадку — це "AOF0093"). Функція SEARCH починає операцію пошуку з позиції восьмого символу, знаходить символ, який вказано в аргументі шук_текст у наступній позиції та повертає число 9. Функція SEARCH завжди повертає кількість символів із початку аргументу текст_перегляду, рахуючи символи, які пропускаються, якщо аргумент поч_позиція має значення більше 1.
Приклади
Скопіюйте дані прикладу з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. Щоб відобразити результат обчислення формул, виберіть їх, натисніть клавішу F2, а потім – клавішу Enter. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
Дані |
||
---|---|---|
Інструкції |
||
Валовий прибуток |
||
прибуток |
||
«Начальник» тут. |
||
Формула |
Опис |
Результат |
=SEARCH("і";A2;6) |
Положення першої букви «т» в рядку, починаючи з шостої позиції. |
7 |
=SEARCH(A4;A3) |
Положення «прибуток» (текстовий рядок для пошуку – клітинка A4) у «Валовий прибуток» (клітинка для пошуку – A3). |
8 |
=REPLACE(A3;SEARCH(A4;A3);5;"сума") |
Замінює слово «прибуток» на «сума», спочатку шукаючи позицію «прибуток» у клітинці А3, а потім замінюючи цей символ і наступні сім символів рядком «сума». |
Валова сума |
=MID(A3;SEARCH(" ";A3)+1;4) |
Повертає перші чотири символи, які слідують за першим символом пробілу в рядку «Валовий прибуток» (клітинка А3). |
Прибуток |
=SEARCH("""";A5) |
Позиція перших подвійних лапок (") у клітинці A5. |
5 |
=MID(A5;SEARCH("""";A5)+1;SEARCH("""";A5;SEARCH("""";A5)+1)-SEARCH("""";A5)-1) |
Повертає лише текст, який міститься в подвійних лапках у клітинці A5. |
начальник |