Как в Excel посчитать количество пустых ячеек в строке: полное руководство с формулами и примерами

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

Многие пользователи ошибочно думают, что для этой задачи достаточно стандартной функции СЧЁТПУСТОТ(), но она работает только с вертикальными диапазонами. Когда речь идёт о горизонтальном анализе (то есть о строках), требуются другие подходы — от простых формул до массивов и даже Power Query. В этой статье вы найдёте 5 рабочих методов с пошаговыми инструкциями, примерами и предупреждениями о типичных ошибках.

Мы начнём с базовых решений для начинающих, а затем перейдём к продвинутым техникам, которые пригодятся при работе с большими наборами данных. Все примеры протестированы в Excel 2019 и Microsoft 365, но большинство методов совместимы и с более ранними версиями (начиная с Excel 2010). Если вы часто сталкиваетесь с необходимостью очистки данных, этот гайд станет вашей настольной книгой.

Метод 1: Функция СЧЁТЗ + ДЛСТР для подсчёта пустых ячеек в строке

Самый простой способ посчитать пустые ячейки в строке — комбинировать две функции: СЧЁТЗ() (считает непустые ячейки) и ДЛСТР() (определяет длину диапазона). Логика здесь очевидна: если из общего числа ячеек в строке вычесть количество заполненных, получим число пустых.

Формула будет выглядеть так:

=ДЛСТР(A1:Z1) - СЧЁТЗ(A1:Z1)

Где A1:Z1 — диапазон ячеек в строке, который вы анализируете.

Пример: если в строке 10 ячеек, из которых заполнены только 4, формула вернёт значение 6. Этот метод работает и с текстом, и с числами, и с формулами (если они возвращают пустую строку "").

  • ✅ Простота — не требует знания сложных функций
  • ✅ Быстрое выполнение даже на больших таблицах
  • ⚠️ Не учитывает ячейки с формулами, возвращающими 0 (они считаются непустыми)
  • ⚠️ Не работает с ячейками, содержащими только пробелы

Важно! Если в вашей строке есть ячейки с формулами, которые возвращают пустую строку (например, =ЕСЛИ(A1=0;"";"Да")), они будут восприняты как пустые. Но если формула возвращает 0 или пробел — они посчитаются как заполненные.

📊 Какой версией Excel вы пользуетесь чаще всего?
Excel 2010-2016
Excel 2019
Microsoft 365 (Excel Online)
Mac-версия Excel
Другая

Метод 2: Использование функции СЧЁТЕСЛИ с критерием "" (пустая строка)

Функция СЧЁТЕСЛИ() позволяет подсчитывать ячейки, соответствующие заданному критерию. Для поиска пустых ячеек критерием будет пустая строка "". Формула примет вид:

=СЧЁТЕСЛИ(A1:Z1; "")

Этот метод точнее предыдущего, так как явно ищет пустые ячейки, а не вычитает заполненные из общего числа. Однако у него есть свои особенности:

  • 🔹 Подходит для строк с текстом, числами и формулами, возвращающими ""
  • 🔹 Не учитывает ячейки с пробелами (например, " ")
  • 🔹 Работает медленнее на больших диапазонах, чем СЧЁТЗ

Если в ваших данных могут встречаться ячейки с пробелами, которые тоже нужно считать пустыми, используйте модифицированную формулу с функцией ПРОБЕЛЫ():

=СУММПРОИЗВ(--(A1:Z1="");--(ДЛСТР(ПРОБЕЛЫ(A1:Z1))=0))
Эта формула массива требует подтверждения нажатием Ctrl+Shift+Enter в старых версиях Excel.

Метод 3: Формула массива для сложных случаев (включая пробелы и нули)

Если вам нужно учитывать не только полностью пустые ячейки, но и те, что содержат 0, пробелы или непечатаемые символы, пригодится формула массива. Она анализирует каждую ячейку в строке по нескольким критериям одновременно.

Пример формулы для подсчёта ячеек, которые:

  1. Совершенно пусты, или
  2. Содержат только пробелы, или
  3. Содержат 0 (если это считается "пустым" в вашей логике)
=СУММ(--(A1:Z1="")--(ДЛСТР(ПРОБЕЛЫ(A1:Z1))=0)--(A1:Z1=0))
В Excel 365 и Excel 2019 формула работает как обычная. В старых версиях нажмите Ctrl+Shift+Enter.

Разберём, как она работает:

Часть формулы Что проверяет Пример срабатывания
A1:Z1="" Пустые ячейки Ячейка A1 не содержит данных
ДЛСТР(ПРОБЕЛЫ(A1:Z1))=0 Ячейки с пробелами Ячейка B1 содержит " "
A1:Z1=0 Ячейки с нулём Ячейка C1 содержит 0
⚠️ Внимание: Если в вашей строке есть ячейки с формулами, возвращающими 0, они тоже будут посчитаны как "пустые". Чтобы исключить их, добавьте условие --(ЕПУСТО(A1:Z1)) в начало формулы.

Метод 4: Power Query для автоматизации подсчёта

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

Алгоритм действий:

  1. Выделите вашу таблицу и перейдите на вкладку Данные → Из таблицы/диапазонаExcel 2016-2019) или Данные → Получить данные → Из таблицы/диапазонаExcel 365).
  2. В открывшемся редакторе Power Query добавьте настраиваемый столбец с формулой:
    = List.Count(List.Select(Record.FieldValues([YourRow]), each _ = "" or _ = null))

    Где [YourRow] — имя строки в вашей таблице.

  3. Нажмите Закрыть и загрузить, чтобы вернуть данные в Excel с новым столбцом, где будет указано количество пустых ячеек в каждой строке.
  • 🚀 Обрабатывает миллионы строк без замедления
  • 🔄 Позволяет обновлять данные одним кликом
  • ⚙️ Требует начальных знаний Power Query

Когда использовать Power Query? Этот метод оправдан, если:

  • 📊 Ваша таблица содержит более 10 000 строк
  • 🔄 Данные регулярно обновляются (например, ежедневные отчёты)
  • 🛠️ Вам нужно не только посчитать пустые ячейки, но и очистить/преобразовать данные
Как убрать строки с пустыми ячейками в Power Query?

В редакторе Power Query выделите столбец с подсчётом пустых ячеек → нажмите на стрелку фильтра → выберите "0" (если хотите оставить только полностью заполненные строки) или укажите максимально допустимое число пустых ячеек.

Метод 5: VBA-скрипт для массовой обработки

Если вы работаете с Excel профессионально и часто сталкиваетесь с необходимостью анализировать пустые ячейки, автоматизация через VBA сэкономит часы времени. Ниже приведён скрипт, который добавляет новый столбец с количеством пустых ячеек для каждой строки в выделенном диапазоне.

Как использовать:

  1. Нажмите Alt + F11, чтобы открыть редактор VBA.
  2. Вставьте новый модуль (Insert → Module).
  3. Скопируйте туда следующий код:
    Sub CountEmptyCellsInRows()
    

    Dim rng As Range

    Dim cell As Range

    Dim lastCol As Long

    Dim emptyCount As Integer

    Dim outputCol As Long

    ' Выбираем диапазон (например, A1:Z100)

    Set rng = Application.Selection

    ' Определяем последний столбец и столбец для вывода результата

    lastCol = rng.Columns(rng.Columns.Count).Column

    outputCol = lastCol + 1

    ' Добавляем заголовок для нового столбца

    Cells(1, outputCol).Value = "Пустые ячейки"

    ' Проходим по каждой строке

    For Each cell In rng.Rows

    emptyCount = 0

    For i = 1 To rng.Columns.Count

    If IsEmpty(cell.Cells(1, i)) Or Trim(cell.Cells(1, i).Value) = "" Then

    emptyCount = emptyCount + 1

    End If

    Next i

    cell.Cells(1, outputCol).Value = emptyCount

    Next cell

    End Sub

  4. Вернитесь в Excel, выделите диапазон строк (например, A1:Z100) и запустите макрос (Alt + F8 → CountEmptyCellsInRows → Выполнить).

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

  • ⚡ Мгновенная обработка тысяч строк
  • 🎛️ Гибкая настройка под любые условия (например, игнорировать ячейки с нулём)
  • 🔄 Возможность интеграции в более сложные скрипты
⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов) и убедитесь, что в настройках безопасности разрешено выполнение скриптов (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Включить все макросы).

Сохранить файл как .xlsm|Включить макросы в настройках Excel|Выделить диапазон данных перед запуском|Проверить код на наличие ошибок (F8 для пошагового выполнения)-->

Типичные ошибки и как их избежать

Даже опытные пользователи Excel иногда сталкиваются с неожиданными результатами при подсчёте пустых ячеек. Вот наиболее распространённые ошибки и способы их решения:

  • 🔴 Формула возвращает 0, хотя пустые ячейки есть
    Причина: В ячейках содержатся невидимые символы (пробелы, табуляции) или формулы, возвращающие "".
    Решение: Используйте формулу массива с ПРОБЕЛЫ() или очистите данные с помощью ТРИМ().
  • 🔴 Подсчёт работает медленно на больших таблицах
    Причина: Формулы массива или СЧЁТЕСЛИ по всему диапазону перегружают процессор.
    Решение: Ограничьте диапазон только нужными столбцами или используйте Power Query.
  • 🔴 Ячейки с формулами считаются как непустые
    Причина: Формулы возвращают 0 или пробел, которые не попадают под критерий ="".
    Решение: Добавьте проверку на ЕПУСТО() или модифицируйте формулу (см. Метод 3).

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

Критическая ошибка: если вы используете подсчёт пустых ячеек для важных отчётов, никогда не полагайтесь на один метод. Например, в финансовых данных ячейка с 0 и пустая ячейка могут означать разные вещи — уточните требования к данным перед анализом.

Практические примеры применения

Давайте рассмотрим, как подсчёт пустых ячеек в строках помогает решать реальные задачи:

  • 📋 Анализ анкет: Представьте, что у вас таблица с ответами на 20 вопросов (столбцы A:T). Чтобы найти неполные анкеты, посчитайте пустые ячейки в каждой строке и отфильтруйте те, где их больше 5.
  • 📊 Контроль качества данных: При импорте данных из или CRM часто встречаются пропуски. Автоматический подсчёт пустых ячеек поможет выявить строки, требующие доработки.
  • 🛒 Управление запасами: В таблице с остатками товаров на складах (столбцы — склады, строки — товары) пустые ячейки могут означать отсутствие товара. Их подсчёт поможет быстро найти дефицитные позиции.

Пример формулы для выделения строк с более чем 3 пустыми ячейками (условное форматирование):

  1. Выделите диапазон строк (например, A1:Z100).
  2. Перейдите на вкладку Главная → Условное форматирование → Создать правило.
  3. Выберите Использовать формулу... и введите:
    =СУММ(--(A1:Z1=""))>3
  4. Задайте формат (например, красный фон) и нажмите ОК.

Теперь все строки с более чем 3 пустыми ячейками будут выделены — это визуально упрощает анализ.

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

Можно ли посчитать пустые ячейки в строке без формул?

Да, но это ручной процесс. Выделите строку, нажмите F5 → Выделить → Пустые ячейки. Excel покажет количество выделенных ячеек в строке состояния (внизу окна). Однако этот метод не подходит для массовой обработки.

Почему функция СЧЁТПУСТОТ() не работает со строками?

СЧЁТПУСТОТ() предназначена для вертикальных диапазонов (столбцов). Для строк используйте комбинации СЧЁТЗ + ДЛСТР или СЧЁТЕСЛИ с критерием "".

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

Используйте формулу массива:

=СУММ(--(ЕПУСТО(A1:Z1)))

Она учитывает только действительно пустые ячейки, игнорируя те, где есть формулы (даже если они возвращают "").

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

Да, с помощью Power Query или VBA. В Power Query добавьте фильтр по столбцу с подсчётом пустых ячеек (оставить только строки, где значение = 0). В VBA используйте цикл для удаления строк, где количество пустых ячеек превышает заданное.

Как посчитать пустые ячейки в строке в Google Sheets?

В Google Таблицах используйте ту же логику, что и в Excel, но с учётом синтаксиса:

=COUNTA(A1:Z1)-COUNTIF(A1:Z1;"<>")

Или для точного подсчёта (включая пробелы):

=SUMPRODUCT(--(A1:Z1="");--(LEN(TRIM(A1:Z1))=0))