Как использовать функцию FIND в Google Таблицах для поиска и фильтрации данных о гадалках по ключевым словам

Учимся ловить «таро» и «предсказание» функцией НАЙТИ. Быстрый фильтр базы гадалок без магии — чистая формула!

В любой базе данных‚ где хранятся сведения о специалистах‑гадалках (имя‚ город‚ услуги‚ описание‚ ссылка и т.д.)‚ часто возникает необходимость быстро отобрать только те записи‚ где в тексте встречаются определённые ключевые слова: «гадалка»‚ «таро»‚ «предсказание» и пр. В Google Таблицах для такой задачи удобно использовать функцию FIND (в русской версии – НАЙТИ).

В статье мы разберём:

  • Что делает FIND и чем отличается от SEARCH;
  • Как построить простые и сложные запросы поиска;
  • Как соединить FIND с другими функциями (FILTER‚ INDEX‚ ПОИСКПОЗ‚ ARRAYFORMULA);
  • Практический пример – создание «дашборда» по гадалкам.

Основы функции FIND (НАЙТИ)

Синтаксис функции:

FIND(искомый_текст; текст; [нач_позиция])
  • искомый_текст – строка‚ которую нужно найти (можно указать в кавычках или ссылкой на ячейку);
  • текст – ячейка или диапазон‚ где производится поиск;
  • нач_позиция (необязательно) – номер символа‚ с которого начинается поиск (по умолчанию 1).

Функция возвращает номер первого символа‚ с которого найдено совпадение. Если строка не найдена – возникает ошибка #VALUE!. FIND учитывает регистр и ищет слева направо.

Пример:

A B
Описание Опытный гадалка из Санкт‑Петербурга
Формула =FIND(«гадалка»; B2)

Результат – 9 (позиция первой буквы «г»);


Подготовка данных: пример таблицы «Гадалки»

Предположим‚ у вас есть лист Гадалки со следующими колонками:

A B C D E
Имя Город Услуги Описание Ссылка
Ирина Москва Таро‚ руны Профессиональная гадалка с 10‑летним стажем …
Ольга Казань Нумерология Эксперт по предсказанию будущего …
Светлана Санкт‑Петербург Таро Опытный таролог‚ иногда называют «гадалка» …

Наша цель – отобрать только те строки‚ где в колонке D (Описание) встречается слово «гадалка».


Простой поиск слова «гадалка»

Для проверки наличия слова в ячейке удобно использовать комбинацию FIND + ISNUMBER + IFERROR:

=IFERROR(ISNUMBER(FIND("гадалка"; D2)); FALSE)

Эта формула возвращает TRUE‚ если слово найдено‚ и FALSE в противном случае (ошибку #VALUE! мы «проглатываем» с помощью IFERROR).

Чтобы сразу отфильтровать нужные строки‚ используем функцию FILTER:

=FILTER(A2:E; ISNUMBER(FIND("гадалка"; D2:D)))

Результат – таблица‚ содержащая только те гадалки‚ у которых в описании есть слово «гадалка».


Поиск нескольких вариантов слов

Часто требуется искать не одно‚ а несколько вариантов: «гадалка»‚ «таро»‚ «предсказание». Есть несколько подходов.

Сочетание нескольких FIND через OR

=FILTER(
 A2:E;
 (ISNUMBER(FIND("гадалка"; D2:D))) +
 (ISNUMBER(FIND("таро"; D2:D))) +
 (ISNUMBER(FIND("предсказание"; D2:D))) > 0
)

Знак «+» работает как логическое OR (если хотя бы один из условий TRUE‚ сумма будет >0).

Использование REGEXMATCH (регулярные выражения)

=FILTER(
 A2:E;
 REGEXMATCH(LOWER(D2:D); "гадалка|таро|предсказание")
)

Здесь REGEXMATCH автоматически игнорирует регистр (благодаря LOWER) и ищет любые из перечисленных слов.

Комбинация SEARCH (не учитывает регистр)

=FILTER(
 A2:E;
 ISNUMBER(SEARCH("гадалка"; D2:D))
)

Если регистр не важен‚ SEARCH проще‚ чем FIND.


Интеграция FIND с INDEX и ПОИСКПОЗ (MATCH)

Предположим‚ нужно найти телефон (столбец F) гадалки‚ у которой в описании встречается слово «гадалка».

  1. Сначала получаем номер строки с помощью ПОИСКПОЗ (MATCH):
=ПОИСКПОЗ(TRUE; ARRAYFORMULA(ISNUMBER(FIND("гадалка"; D2:D)))); 0)

Эта формула возвращает относительный номер строки внутри диапазона D2:D.

  1. Затем используем INDEX для получения нужного значения:
=INDEX(F2:F; ПОИСКПОЗ(TRUE; ARRAYFORMULA(ISNUMBER(FIND("гадалка"; D2:D)))); 0)

Если нужно сразу вернуть несколько столбцов‚ можно обернуть всё в FILTER (см. пункт 3).


Массовый поиск с ARRAYFORMULA

Чтобы не писать формулу в каждой строке‚ используем массивный вариант:

=ARRAYFORMULA(IFERROR(FIND("гадалка"; D2:D); ""))

В результате в столбце появятся позиции найденных слов‚ а пустые ячейки – там‚ где слово отсутствует.


Ограничения и подводные камни функции FIND

  • Учет регистра. «Гадалка» и «гадалка» различаются. Если нужен регистронезависимый поиск – используйте SEARCH или REGEXMATCH.
  • Ошибка #VALUE! появляется‚ когда слово не найдено. Всегда оборачивайте FIND в IFERROR или проверяйте ISNUMBER.
  • Поиск только слева направо. Функция ищет первое вхождение. Если нужно найти последнее‚ используйте комбинацию LEN + SUBSTITUTE или REGEXEXTRACT.
  • Ограничения диапазона. FIND работает с одной ячейкой; для диапазонов используйте ARRAYFORMULA или FILTER.

Альтернативные методы поиска

Метод Плюсы Минусы
FIND Точный поиск‚ учитывает регистр Возникает ошибка‚ если нет совпадения
SEARCH Не учитывает регистр‚ проще в использовании Тоже выдаёт ошибку #VALUE! при отсутствии совпадения
REGEXMATCH Поддержка нескольких вариантов‚ регистронезависимый при LOWER Требует знания регулярных выражений
QUERY SQL‑подобный синтаксис‚ удобно для сложных фильтров Не поддерживает функции FIND напрямую‚ только CONTAINS

Практический кейс: дашборд «Гадалки по городам»

Задача – вывести количество гадалок в каждом городе‚ у которых в описании встречается слово «гадалка».

  1. Создаём вспомогательный столбец F с формулой:
=ARRAYFORMULA(IF(ISNUMBER(FIND("гадалка"; D2:D)); 1; 0))

Столбец F будет содержать 1 – если слово найдено‚ и 0 – иначе.

  1. Используем PIVOT TABLE (Сводную таблицу):
    • Строки – Город (столбец B);
    • Значения – Сумма столбца F (количество найденных).

Получаем быстрый отчёт‚ где видно‚ в каких городах больше всего гадалок.


Автоматизация: подсветка строк с помощью Apps Script

Если хочется‚ чтобы строки с найденным словом автоматически подсвечивались цветом‚ можно добавить простой скрипт:

function highlightDiviners {
 const sheet = SpreadsheetApp.getActiveSpreadsheet.getSheetByName('Гадалки');
 const range = sheet.getRange('D2:D' + sheet.getLastRow);
 const values = range.getValues;
 const backgrounds = [];

 for (let i = 0; i < values.length; i++) {
 const text = values[i][0];
 if (text && text.toLowerCase.includes('гадалка')) {
 backgrounds.push(['#ffeb3b']); // желтый
 } else {
 backgrounds.push([null]);
 }
 }
 range.setBackgrounds(backgrounds);
}

Запуск функции highlightDiviners подсветит желтым все ячейки столбца D‚ где встречается слово «гадалка».


  • Функция FIND – простой и быстрый способ найти точное вхождение текста с учётом регистра.
  • Для более гибкого поиска используйте SEARCH‚ REGEXMATCH или комбинацию нескольких FIND.
  • Сочетание FIND с FILTER‚ ARRAYFORMULA‚ INDEX и ПОИСКПОЗ позволяет создавать мощные запросы без скриптов.
  • Не забывайте обрабатывать ошибки (IFERROR) и о том‚ что FIND чувствителен к регистру.
  • Для визуального контроля удобно использовать условное форматирование или небольшие скрипты Apps Script.

С помощью описанных приёмов вы сможете быстро отбирать нужные записи о гадалках‚ строить аналитические отчёты и автоматизировать работу с большими таблицами в Google Sheets.