Подсчёт строк с одинаковым текстом в Excel: от простого к сложному

Работа с большими таблицами в Microsoft Excel часто требует анализа повторяющихся данных. Возможно, вам нужно узнать, сколько раз встречается название товара в прайс-листе, сколько клиентов из одного города или сколько одинаковых ошибок зафиксировано в логах. Подсчёт строк с одинаковым текстом — одна из самых востребованных операций, и в Excel для этого есть как минимум 5 разных способов.

Многие пользователи ошибочно думают, что для этой задачи обязательно нужны макросы или сложные формулы. На самом деле даже начинающий может справиться за пару минут, если знает правильные инструменты. В этой статье мы разберём методы разной сложности — от элементарных функций до продвинутых техник с Power Query, а также покажем, как визуализировать результаты для отчётов.

Прежде чем приступать к подсчётам, убедитесь, что ваши данные подготовлены правильно. Текстовые значения должны быть идентичны — даже лишний пробел или разный регистр (Текст vs текст) приведёт к тому, что Excel воспримет их как разные записи. Если нужно игнорировать регистр или пробелы, потребуются дополнительные функции вроде ТРИМ или ПРОПИСН.

Ещё один важный момент: если вы работаете с динамическими данными, которые часто обновляются, лучше использовать формулы или Power Query, а не статические фильтры. Это избавит от необходимости пересчитывать всё вручную после каждого изменения.

1. Простейший способ: функция СЧЁТЕСЛИ

Функция СЧЁТЕСЛИ — самый быстрый и универсальный инструмент для подсчёта повторяющихся текстовых значений. Она работает во всех версиях Excel, включая Excel Online, и не требует специальных навыков.

Формат функции:

=СЧЁТЕСЛИ(диапазон; критерий)

Где:

- диапазон — столбец или диапазон ячеек, в которых ищем повторения.

- критерий — текстовое значение, которое нужно посчитать (обязательно в кавычках).

Пример: если в столбце A2:A100 перечислены названия городов, и вам нужно узнать, сколько раз встречается "Москва", формула будет такой:

=СЧЁТЕСЛИ(A2:A100; "Москва")
  • ✅ Простота: не требует знания сложных формул.
  • ✅ Скорость: мгновенно пересчитывается при изменении данных.
  • ⚠️ Ограничение: чувствительна к регистру (если нужно игнорировать — см. раздел 3).
  • ⚠️ Подходит только для подсчёта одного конкретного значения за раз.

Чтобы посчитать все уникальные значения в столбце автоматически, комбинируйте СЧЁТЕСЛИ с функцией УНИК (доступна в Excel 365 и Excel 2021):

=СЧЁТЕСЛИ(A2:A100; УНИК(A2:A100))
Эта комбинация вернёт массив с количеством каждого уникального значения — идеально для быстрого анализа без сводных таблиц.
📊 Какой версией Excel вы пользуетесь?
Excel 365
Excel 2019
Excel 2016
Excel Online
Другая

2. Подсчёт с помощью сводной таблицы

Сводные таблицы — мощный инструмент для анализа повторяющихся данных, особенно когда нужно не только посчитать строки, но и сгруппировать их по нескольким критериям. Например, вы можете узнать, сколько заказов сделано каждым клиентом в каждом месяце.

Пошаговая инструкция:

  1. Выделите диапазон данных (включая заголовки столбцов).
  2. Перейдите на вкладку ВставкаСводная таблица.
  3. В открывшемся окне выберите, куда поместить таблицу (на новый лист или в текущий).
  4. В панели Поля сводной таблицы перетащите столбец с текстом, который нужно посчитать, в область Строки.
  5. В область Значения перетащите тот же столбец — Excel автоматически посчитает количество повторений.

Преимущества метода:

  • 📊 Визуализация: данные сразу отображаются в удобном для анализа виде.
  • 🔄 Гибкость: можно добавлять несколько уровней группировки (например, по городу и по кварталу).
  • 📈 Динамичность: обновляется при изменении исходных данных.
⚠️ Внимание: Если в ваших данных есть пустые ячейки, сводная таблица может посчитать их как отдельную категорию. Чтобы этого избежать, предварительно очистите данные или используйте фильтр.

Удалить пустые строки|Проверить текст на опечатки|Унифицировать регистр (например, сделать всё заглавными)|Убедиться, что нет скрытых символов (пробелов, табуляций)-->

3. Подсчёт без учёта регистра

По умолчанию Excel различает заглавные и строчные буквы: "Текст" и "текст" для него — разные значения. Если вам нужно посчитать повторения независимо от регистра, используйте комбинацию функций СЧЁТЕСЛИ и ПРОПИСН (или СТРОЧН):

=СЧЁТЕСЛИ(ПРОПИСН(диапазон); ПРОПИСН(критерий))

Пример: чтобы посчитать все варианты слова "москва" (в любом регистре) в диапазоне A2:A100:

=СЧЁТЕСЛИ(ПРОПИСН(A2:A100); "МОСКВА")

Для Excel 365 и Excel 2021 можно использовать более элегантное решение с функцией СЧЁТЕСЛИМН (поддерживает массивы):

=СЧЁТЕСЛИМН(A2:A100; ПРОПИСН(A2:A100); "МОСКВА")

Если вам нужно полностью игнорировать регистр во всём столбце и посчитать все уникальные значения, используйте формулу массива (вводится через Ctrl+Shift+Enter в старых версиях Excel):

=СУММ(--(ЧАСТОТА(ПРОПНБ(A2:A100); ПРОПНБ(A2:A100))>0))
Функция Пример использования Учитывает регистр? Работает в массивах?
СЧЁТЕСЛИ =СЧЁТЕСЛИ(A2:A100; "Текст") Да Нет
СЧЁТЕСЛИ + ПРОПИСН =СЧЁТЕСЛИ(ПРОПИСН(A2:A100); "ТЕКСТ") Нет Нет
СЧЁТЕСЛИМН =СЧЁТЕСЛИМН(A2:A100; ПРОПИСН(A2:A100); "ТЕКСТ") Нет Да
ЧАСТОТА + ПРОПНБ =СУММ(--(ЧАСТОТА(ПРОПНБ(A2:A100); ПРОПНБ(A2:A100))>0)) Нет Да

4. Продвинутый метод: Power Query

Power Query (доступен в Excel 2016 и новее) — это инструмент для преобразования и очистки данных, который позволяет автоматизировать подсчёт повторяющихся значений. Его главное преимущество — независимость от формул: вы настраиваете процесс один раз, а затем обновляете данные одним кликом.

Как посчитать повторения с помощью Power Query:

  1. Выделите исходные данные и перейдите на вкладку ДанныеИз таблицы/диапазонаExcel 2016Получить данныеИз таблицы/диапазона).
  2. В открывшемся редакторе Power Query выберите столбец с текстом, который нужно анализировать.
  3. Перейдите на вкладку ПреобразованиеГруппировка.
  4. В окне группировки укажите:
    • Столбец для группировки (ваш текстовый столбец).
    • Имя нового столбца (например, "Количество").
    • Операцию: Количество значений.
  • Нажмите ОК и Закрыть и загрузить.
  • Результат — новая таблица с уникальными значениями и их количеством. Преимущества метода:

    • 🔄 Автоматическое обновление: достаточно кликнуть Обновить на вкладке Данные.
    • 🧹 Очистка данных: можно одновременно удалить пробелы, исправить регистр, заменить ошибки.
    • 📂 Сохранение шагов: все преобразования записываются и могут быть повторены.
    ⚠️ Внимание: Если ваши данные обновляются из внешнего источника (например, из SQL или CSV), настройте Автоматическое обновление в параметрах запроса. Иначе придётся запускать процесс вручную.

    5. Подсчёт с частичным совпадением текста

    Иногда нужно посчитать не точные совпадения, а строки, содержащие определённый фрагмент текста. Например, количество email-адресов от одного домена или названий товаров с общим словом. Для этого используйте подстановочные знаки в СЧЁТЕСЛИ:

    • — любое количество символов (например, "@gmail.com" найдёт все адреса на Gmail).
    • ? — один любой символ (например, "текст?" найдёт "текст1", "текстА" и т.д.).

    Примеры:

    =СЧЁТЕСЛИ(A2:A100; "москва")  
    

    =СЧЁТЕСЛИ(A2:A100; "???-???")

    Для более сложных условий (например, поиска по регулярным выражениям) в Excel 365 можно использовать функции ФИЛЬТР и СЧЁТ:

    =СЧЁТ(ФИЛЬТР(A2:A100; НЕ(ОШИБКА(ПОИСК("москва"; A2:A100)))))

    Если вам нужно исключить определённые слова из подсчёта, комбинируйте СЧЁТЕСЛИ с ЕСЛИ:

    =СУММ(--(ЕСЛИ(ЕЧИСЛО(ПОИСК("москва"; A2:A100)); 1; 0)))
    Как посчитать строки с несколькими условиями?

    Используйте СЧЁТЕСЛИМН для нескольких критериев. Например, чтобы посчитать строки, где в столбце A есть "москва", а в столбце B — "2023":

    =СЧЁТЕСЛИМН(A2:A100; "москва"; B2:B100; "2023")

    6. Визуализация результатов: условное форматирование

    Подсчёт повторяющихся строк — только половина дела. Чтобы быстро анализировать данные, полезно выделить дубликаты или наиболее частые значения. Для этого используйте Условное форматирование:

    1. Выделите диапазон с данными.
    2. Перейдите на вкладку ГлавнаяУсловное форматированиеПравила выделения ячеекПовторяющиеся значения.
    3. Выберите формат для дубликатов (например, красный текст или жёлтый фон).

    Для более сложной визуализации (например, выделения самых частых значений) используйте формулы в условном форматировании:

    1. Выделите диапазон и создайте новое правило (Управление правиламиСоздать правило).
    2. Выберите тип правила: Использовать формулу для определения форматируемых ячеек.
    3. Введите формулу (например, для выделения значений, встречающихся более 5 раз):
      =СЧЁТЕСЛИ($A$2:$A$100; A2)>5
    4. Задайте формат (например, зелёный фон).

    Чтобы отсортировать данные по частоте, добавьте вспомогательный столбец с формулой СЧЁТЕСЛИ, а затем отсортируйте таблицу по этому столбцу.

    7. Ошибки и решения: почему Excel не считает повторения?

    Если формулы возвращают неожиданные результаты, проверьте эти моменты:

    • 🔍 Скрытые символы: Пробелы, неразрывные пробелы (CHAR(160)), табуляции или переносы строк (CHAR(10)) могут делать визуально одинаковые строки разными. Используйте =КОДСИМВ(ЛЕВСИМВ(A2)), чтобы проверить первый символ.
    • 📏 Разный регистр: Как упоминалось ранее, "Текст""текст". Применяйте ПРОПИСН или СТРОЧН для унификации.
    • 📊 Формат ячеек: Если ячейки отформатированы как даты или числа, хранящиеся как текст, Excel может воспринимать их некорректно. Используйте =ТИП(A2) для проверки (16 — текст, 1 — число).
    • 🔢 Числа vs текст: Число 123 и текст "123" — разные значения. Преобразуйте данные с помощью =ЗНАЧЕН(A2) или =ТЕКСТ(A2; "0").

    Как очистить данные перед подсчётом?

    1. Удалите лишние пробелы: =ТРИМ(A2).
    2. Унифицируйте регистр: =ПРОПИСН(A2) или =СТРОЧН(A2).
    3. Замените непечатаемые символы: =ПОДСТАВИТЬ(A2; СИМВОЛ(160); " ") (заменяет неразрывный пробел на обычный).
    ⚠️ Внимание: Если вы импортировали данные из CSV или базы данных, проверьте кодировку. Символы в кодировке UTF-8 могут отображаться корректно, но сравниваться как разные из-за скрытых байтов. Используйте =КОДСИМВ для диагностики.

    FAQ: Частые вопросы о подсчёте повторяющихся строк

    Можно ли посчитать повторения в нескольких столбцах одновременно?

    Да, для этого используйте функцию СЧЁТЕСЛИМН с несколькими диапазонами. Например, чтобы посчитать строки, где в столбце A есть "москва", а в столбце B — "2023":

    =СЧЁТЕСЛИМН(A2:A100; "москва"; B2:B100; "2023")

    Если нужно посчитать уникальные комбинации значений из нескольких столбцов, используйте сводную таблицу или Power Query (группировка по нескольким столбцам).

    Как посчитать повторения, игнорируя пробелы и знаки препинания?

    Сначала очистите данные с помощью комбинации функций:

    =ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ТРИМ(A2); ","; ""); "."; ""); "!"; "")

    Затем используйте СЧЁТЕСЛИ для очищенных данных. В Power Query для этого есть встроенные инструменты замены символов.

    Можно ли автоматически обновлять подсчёт при добавлении новых строк?

    Да, для этого:

    • Используйте таблицы Excel (вкладка ВставкаТаблица). Формулы внутри таблицы автоматически расширяются на новые строки.
    • В Power Query настройте Автоматическое обновление в параметрах запроса.
    • Для формул используйте динамические диапазоны (например, A2:A вместо A2:A100), но это работает не во всех версиях Excel.
    Как экспортировать результаты подсчёта в отдельный файл?

    Если вы использовали:

    • Сводную таблицу: Скопируйте её на новый лист и сохраните как отдельный файл (ФайлСохранить как).
    • Power Query: Загрузите результат в новую книгу (Закрыть и загрузить в...Новая книга).
    • Формулы: Скопируйте столбец с результатами и вставьте как Значения (ГлавнаяВставитьЗначения).

    Для регулярного экспорта настройте Power Query с подключением к внешнему источнику (например, SharePoint или SQL).

    Есть ли разница между СЧЁТЕСЛИ и СЧЁТЕСЛИМН?

    СЧЁТЕСЛИ подсчитывает ячейки по одному критерию в одном диапазоне, а СЧЁТЕСЛИМН позволяет:

    • Использовать несколько критериев (например, текст в одном столбце И дата в другом).
    • Работать с несоседними диапазонами.
    • В Excel 365 обрабатывать массивы данных без нажатия Ctrl+Shift+Enter.

    Пример с СЧЁТЕСЛИМН:

    =СЧЁТЕСЛИМН(A2:A100; ">100"; B2:B100; "да")

    Эта формула посчитает строки, где значение в столбце A больше 100, а в столбце B — "да".