У меня есть таблица Excel, и я пытаюсь подсчитать строки в столбце на основе стиля, примененного к некоторым ячейкам в столбце. Есть ли простой способ сделать это?
2 ответа
Нет, не совсем. Вы можете использовать Visual Basic для доступа к свойствам форматирования ячеек, но большинство встроенных функций, которые вы вводите в ячейку, фокусируются на содержимом ячейки, а не на форматировании.
Если ваши стили имеют разные цвета затенения, вы можете использовать следующий метод.
Шаг 1: Преобразуйте ваш диапазон в список, а затем добавьте итоговую строку с COUNT
Шаг 2. Примените цветной фильтр (должен работать в Excel 2007 и более поздних версиях):
Готово: итоговое значение COUNT покажет отфильтрованное количество строк.
Вы можете использовать VBA для этого:
Function CountStyle(CellRange)
Dim Item As Range, Total As Long
For Each Item In CellRange
' Check to see if the cell is formatted as Style = "Neutral"
If Item.Style = "Neutral" Then
Total = Total + 1
End If
Next Item
CountStyle = Total
End Function
Взято отсюда.
- Нажмите Alt+F11, чтобы запустить редактор Visual Basic.
- Вставить> Модуль
- Вставьте вышеуказанный код
- Перейдите в Excel и выберите ячейку, в которой должен быть результат. Напишите, например,
=CountStyle (B4:B23)
Теперь у вас есть все ячейки со стилем Neutral
. Я создал три функции для нейтральной, хорошей, плохой. Это выглядит так:
Function CountStyleGood(CellRange)
Dim Item As Range, Total As Long
For Each Item In CellRange
' Check to see if the cell is formatted as Style = "Good"
If Item.Style = "Good" Then
Total = Total + 1
End If
Next Item
CountStyleGood = Total
End Function
Wit =CountStyleGood(B4:B23)
вы получите результат. В качестве названия стиля я использовал имя, отображаемое на ленте.