Перейти до основного контенту

VBA Excel функція SEARCH: Пошук в рядку або комірці

8 хв читання
999 переглядів

SEARCH - це вбудована в VBA Excel функція, яка дозволяє здійснювати пошук заданого тексту в зазначеному рядку або комірці. Вона корисна в ситуаціях, коли потрібно знайти позицію першого входження шуканого тексту в текстовому рядку або осередку.

Скористатися функцією SEARCH дуже просто. Найменування функції слід ввести в осередок або вказати в коді VBA, після чого задати в якості аргументів шуканий текст і рядок або осередок, в якій потрібно виконати пошук.

Функція SEARCH повертає номер позиції першого входження шуканого тексту в рядку або комірці, якщо текст знайдений. У випадку, якщо текст не знайдено, функція повертає # VALUE!

VBA Excel функція SEARCH: синтаксис і застосування

Синтаксис:

SEARCH (шуканий_текст, текст_где_іскать, [початкова_позиція])

Параметр:

шуканий_текст-це текст, який потрібно знайти в рядку або комірці.

текст_где_іскать-це рядок або осередок, в якій буде здійснюватися пошук.

початкова_позиція (опціональний) - це позиція, з якої потрібно почати пошук в тексті. За замовчуванням функція починає пошук з першого символу.

Застосування:

Функція SEARCH використовується для знаходження позиції шуканого тексту в рядку або комірці. Вона повертає позицію першого символу знайденого тексту.

Приклади використання функції SEARCH:

Нехай у нас є комірка A1 зі значенням "приклад тексту". Ми хочемо знайти позицію слова "текст" у цій комірці. Для цього використовуємо наступну формулу: =SEARCH("текст", A1, 1) . Функція поверне значення 8, так як шукане слово починається з 8-ої позиції в даній комірці.

Тепер ми хочемо знайти позицію слова " абв "в рядку"абракадабра". Для цього використовуємо наступну формулу: =SEARCH("абв", "абракадабра", 1) . Функція поверне значення 1, так як шукане слово починається з першої позиції в даному рядку.

Функція SEARCH не враховує регістр символів при пошуку. Це означає, що слово " Текст "буде знайдено як" текст "в рядку"приклад тексту". Якщо вам потрібно враховувати регістр символів, використовуйте функцію FIND.

Використовуйте функцію SEARCH у вашому VBA коді, щоб виконати пошук тексту в рядках або клітинках і отримати позицію першого символу знайденого тексту.

Як використовувати функцію пошуку в Excel для пошуку тексту в комірці

Функція SEARCH в Excel застосовується для пошуку певного тексту в заданій комірці. Вона повертає позицію початку знайденого тексту в комірці. Функція враховує регістр букв, тому потрібно бути уважним при використанні.

Синтаксис функції SEARCH виглядає наступним чином:

= SEARCH (шуканий_текст, комірка, [почати_символ])

Шуканий_текст-це текст, який потрібно знайти в комірці.

Осередок-адреса осередку, в якій необхідно здійснити пошук.

Почати_символ (необов'язковий аргумент) - це номер символу, з якого починається пошук. Якщо цей аргумент не вказано, то пошук буде здійснено з початку тексту в комірці.

Приклад використання функції SEARCH:

Припустимо, в комірці A1 знаходиться наступний текст: "приклад тексту для пошуку". І ми хочемо знайти позицію слова "Текст" у цій клітинці.

Тоді формула буде виглядати наступним чином:

= SEARCH ("тексту", A1)

Функція пошуку поверне результат 8, оскільки слово "текст" починається з 8-го символу в комірці A1.

Якщо ми хочемо почати пошук з певного символу, то потрібно вказати його номер в аргументі начать_символ. Наприклад, якщо ми хочемо почати пошук з 10-го символу:

= SEARCH("тексту", A1, 10)

Функція SEARCH в цьому випадку поверне результат 17, так як слово "тексту" починається з 17-го символу в комірці A1.

Приклад використання функції SEARCH для пошуку підрядка в рядку

Синтаксис функції SEARCH виглядає наступним чином:

SEARCH (підрядок, рядок, [початкова_позиція])

  • підрядок - це текст, який потрібно знайти всередині рядка.
  • рядок - це текст або посилання на клітинку, в якій здійснюється пошук.
  • початкова_позиція (додатковий аргумент) - це число, яке вказує позицію символу, з якого потрібно почати пошук. Якщо цей аргумент не вказано, функція SEARCH буде шукати підрядок з самого початку рядка.

Функція SEARCH повертає Числове значення, яке представляє позицію першого символу знайденого підрядка в рядку. Якщо підрядок не знайдено, функція повертає значення помилки #VALUE!

Приклад використання функції SEARCH для пошуку підрядка в рядку:

Sub FindSubstring () Dim str As String Dim substring As String Dim position As Integer str = "це приклад тексту для пошуку" substring = "приклад" position = Application.WorksheetFunction.Search (substring, str) If position > 0 Then MsgBox "підрядок знайдено на позиції" & position Else MsgBox "підрядок не знайдено" End If End Sub

В даному прикладі функція SEARCH шукає підрядок " приклад "в рядку"це приклад тексту для пошуку". Якщо підрядок знайдена, то на екран виводиться повідомлення "підрядок знайдена на позиції x", де X - позиція першого символу знайденої підрядка. Якщо підрядок не знайдено, то виводиться повідомлення "підрядок не знайдено".

Примітка: Функція SEARCH не враховує регістр символів при пошуку підрядка в рядку. Якщо необхідно враховувати регістр, слід використовувати функцію FIND.

Як застосувати функцію пошуку у VBA для пошуку тексту в комірці або рядку

Функція SEARCH в VBA Excel дозволяє здійснювати пошук підрядка в рядку або вмісті комірки. Вона повертає позицію першого символу знайденої підрядка або значення помилки, якщо підрядка не знайдена.

Синтаксис функції SEARCH наступний:

SEARCH (підрядок, рядок, [початкова_позиція])

  • підрядок - рядковий вираз, який потрібно знайти;
  • рядок - рядковий вираз, в якому потрібно виконати пошук;
  • початкова_позиція (необов'язковий параметр) - ціле число, що вказує позицію, з якої потрібно почати пошук. За замовчуванням функція починає пошук з першого символу рядка або комірки.

Приклад використання функції SEARCH:

Sub SearchExample()Dim searchString As StringDim text As StringDim result As Variant' Задаем значения переменныхsearchString = "мы"text = "Мысли материальны"' Используем функцию SEARCH для поиска подстроки в строке textresult = Search(searchString, text)' Выводим результатIf IsNumeric(result) ThenMsgBox "Подстрока найдена на позиции " & resultElseMsgBox "Подстрока не найдена"End IfEnd Sub

В даному прикладі ми шукаємо підрядок "ми"в рядку " думки матеріальні". Якщо підрядок знайдена, то виводиться повідомлення з позицією знайденої підрядка. Якщо підрядок не знайдено, виводиться повідомлення про те, що підрядок не знайдено.

Функція SEARCH може бути корисною при роботі з даними в Excel, наприклад, для пошуку ключових слів у тексті, фільтрації даних або виконання інших операцій на основі знайденої інформації.