СЧЕТЕСЛИ в Excel отфильтрованных по стилю

У меня есть таблица Excel, и я пытаюсь подсчитать строки в столбец на основе стиля, примененного к некоторым ячейкам в столбце. Есть ли простой способ сделать это?

24
задан Bill Weinman
16.11.2022 4:11 Количество просмотров материала 2887
Распечатать страницу

2 ответа

нет, не правда. Можно использовать Visual Basic для доступа к свойствам форматирования ячеек, но большинство встроенных функций, вводимых в ячейку, фокусируются на содержимом ячейки, а не на форматировании.

Если ваши стили имеют разные цвета заливки, то вы можете использовать следующий метод.

Шаг 1: преобразуйте диапазон в список, а затем добавьте общую строку, показывающую COUNT

enter image description here

Шаг 2: применить цветовой фильтр (должен работать в Excel 2007 и выше):

enter image description here

готово: общее количество покажет отфильтрованное количество строк.

enter image description here

2
отвечен Mike Fitzpatrick 2022-11-17 11:59

вы можете использовать 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

принято от здесь.

  1. пресс Alt+F11 для запуска редактора Visual Basic.
  2. "Вставить" > Модуль
  3. вставить вышеприведенный код
  4. перейдите в 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

Вит =CountStyleGood(B4:B23) вы получили результат. В качестве названия стиля я использовал название, отображаемое на ленте.

0
отвечен testing 2022-11-17 14:16

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх