KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как подсчитать или просуммировать ячейки, содержащие зачеркнутый текст, в Excel?

АвторСяоянДата изменения

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

Подсчёт ячеек с зачеркиванием с помощью VBA в Excel

Подсчёт ячеек без зачеркивания с помощью VBA в Excel

Суммирование с исключением ячеек с зачеркиванием с помощью VBA в Excel

Подсчёт или суммирование ячеек с зачеркиванием с помощью Kutools для Excel


Подсчёт ячеек с зачеркиванием в Excel

Если вам нужно подсчитать общее количество ячеек с зачёркнутым текстом в заданном диапазоне, стандартными средствами Excel это сделать невозможно — в программе отсутствует встроенная формула, способная распознавать текстовое форматирование, такое как зачёркивание. Практичным решением в этом случае становится создание пользовательской функции (UDF) на языке VBA. Такой подход особенно полезен при работе со списками задач, учёте складских запасов или в любых других ситуациях, где зачёркивание служит для отметки завершённых, недействительных или устаревших данных.

1. Удерживая клавиши ALT + F11, откройте окно Microsoft Visual Basic for Applications.

2. В окне VBA выберите Вставка > Модуль, чтобы создать новый модуль, затем вставьте приведённый ниже код в окно модуля.

Код VBA: Подсчёт ячеек с зачеркиванием

Public Function CountStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If pRng.Font.Strikethrough Then
        xOut = xOut + 1
    End If
Next
CountStrike = xOut
End Function

3. После ввода кода сохраните книгу (чтобы макрос сохранился), закройте редактор VBA и вернитесь на лист. В любой пустой ячейке, где должен отобразиться результат, введите следующую формулу (например, для проверки ячеек с зачеркиванием в диапазоне)A2:B14):=CountStrike(A2:B14)

Совет: вы можете заменить диапазон A2:B14 на любой другой, который нужно проверить.

подсчет ячеек с зачеркиванием с помощью пользовательской функции

4. Нажмите клавишу Enter, чтобы выполнить формулу, и Excel немедленно покажет количество всех ячеек с зачёркиванием в ограниченном диапазоне. Это помогает эффективно отслеживать прогресс или удалять устаревшие записи по мере необходимости. См. снимок экрана:

результат подсчета ячеек с зачеркиванием

Внимание: чтобы сохранить этот код VBA для дальнейшего использования, обязательно сохраните файл в формате .xlsm (книга Excel с поддержкой макросов).


Подсчёт ячеек без зачеркивания в Excel

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

1. Нажмите ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Перейдите в меню Вставка > Модуль, чтобы добавить новый модуль кода. Вставьте приведённый ниже код в окно этого модуля.

Код VBA: Подсчёт ячеек без зачеркивания

Public Function CountNoStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If Not pRng.Font.Strikethrough Then
        xOut = xOut + 1
    End If
Next
CountNoStrike = xOut
End Function

3. Сохраните книгу с поддержкой макросов, вернитесь на лист и введите формулу в любую пустую ячейку (например, для диапазона)A2:B14):=countnostrike(A2:B14)Затем нажмите клавишу Enter, чтобы получить результат. Excel подсчитает только те ячейки в выбранном диапазоне, которые не имеют зачеркивания.

подсчет ячеек без зачеркивания с помощью пользовательской функции

Примечание: в приведённом выше примере A2:B14 — это диапазон проверяемых ячеек. При необходимости измените ссылку на диапазон в соответствии с вашим листом. Также учтите, что объединённые ячейки или особое форматирование иногда могут повлиять на результаты — обязательно убедитесь, что ваш диапазон включает только нужные ячейки.


Суммирование с исключением ячеек с зачеркиванием в Excel

При работе с числовыми данными, где некоторые записи больше неактуальны или должны быть проигнорированы (то есть отображаются с зачёркиванием), часто требуется суммировать только действительные значения. Это особенно актуально для бюджетных таблиц, управления запасами или отслеживания задач — в таких случаях зачёркнутые записи обозначают устаревшие или завершённые элементы, которые необходимо исключить из итоговых сумм. Поскольку стандартная функция СУММ в Excel не учитывает форматирование ячеек, для выполнения такой операции потребуется пользовательская функция на VBA.

1. Используйте комбинацию ALT + F11, чтобы открыть редактор Microsoft Visual Basic for Applications.

2. Выберите Вставка > Модуль, чтобы добавить модуль, и вставьте приведённый ниже код в окно этого модуля.

Код VBA: Суммирование с исключением ячеек с зачеркиванием

Public Function ExcStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If Not pRng.Font.Strikethrough Then
        xOut = xOut + pRng.Value
    End If
Next
ExcStrike = xOut
End Function

3. Закройте редактор VBA. На целевом листе выберите пустую ячейку и введите следующую формулу (например, для диапазона)B2:B14): =excstrike(B2:B14) Нажмите клавишу Enter, и Excel просуммирует только те ячейки в вашем ограниченном диапазоне, которые не имеют зачеркивания, мгновенно выдавая сумму без учёта устаревших значений.

суммирование ячеек без зачеркивания с помощью пользовательской функции

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

Практический совет: если после изменения статуса зачеркивания в какой-либо ячейке нужно обновить сумму, просто пересчитайте лист — нажмите клавишу F9.


Подсчёт или суммирование ячеек с зачеркиванием с помощью Kutools для Excel

Если вы хотите подсчитать или просуммировать только ячейки с зачеркиванием, Excel не предоставляет встроенных средств для этого — но Kutools для Excel упрощает эту задачу благодаря своей функции Специальный фильтр.

1. Выделите столбец

Щёлкните столбец, в ячейках которого есть зачёркивание.

2. Откройте специальный фильтр

Перейдите на вкладку KUTOOLS PLUS, затем нажмите Специальный фильтр > Фильтр ячеек со стрижкой.

3. Подтвердите применение фильтрации

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

kutools-filter-result

4. Просмотр результатов

Ячейки с зачёркнутым текстом теперь отфильтрованы и отображаются. Выделите диапазон фильтрации — и вы сразу увидите сумму, среднее значение и количество в строке состояния в нижней части окна Excel.

kutools-count-sum

Почему стоит использовать Kutools?

Kutools для Excel предлагает более 300 мощных и простых в использовании функций, подобных этой, помогая вам экономить время и повышать продуктивность без необходимости писать сложные формулы или код VBA.

Будь то фильтрация по формату, очистка данных, объединение листов или пакетное редактирование — Kutools выполняет всё это за считанные секунды, значительно упрощая вашу работу.

Попробуйте Kutools для Excel бесплатно в течение 30 дней и узнайте, что вы упускали!


См. также:

Как суммировать или подсчитать числа, выделенные жирным шрифтом, в диапазоне ячеек Excel?

Как подсчитать и просуммировать ячейки по цвету фона в Excel?

Как подсчитать или просуммировать ячейки в Excel на основе цвета шрифта?

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

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


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек