Подсчет ячеек, содержащих любой текст

Я хочу посчитать ячейки, которые содержат что-либо в пределах диапазона. Любая ячейка, содержащая текст, или числа, или что-то еще, должна иметь плюс одну в моей ячейке результата.

Я нашел эту функцию,

countif(range; criteria)

но это не работает для меня, потому что я не знаю, что ввести в критерии. Как я могу это сделать?

Ответ 1

Вы можете передать "<>" (включая кавычки) в качестве параметра для criteria. Это в основном говорит, пока его не пусто/пусто, считайте это. Я считаю, что это то, что вы хотите.

=COUNTIF(A1:A10, "<>") 

В противном случае вы можете использовать CountA как предлагает Скотт

Ответ 2

Функция COUNTIF будет считать только ячейки, которые содержат числа в указанном диапазоне.

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

Пример: Функция в A7 = СЧЕТЗ (А1: А6)

Диапазон:

A1 a

A2 b

А3 банан

A4 42

А5

A6

A7 4 → результат

Список функций электронных таблиц Google содержит список всех доступных функций для будущих ссылок https://support.google.com/drive/table/25273?hl=en.

Ответ 3

Образец файла

enter image description here

Замечания:

  • Попытался найти формулу для подсчета непустых ячеек (="" - пустая ячейка) без необходимости использовать data дважды. Решение для : =ARRAYFORMULA(SUM(IFERROR(IF(data="",0,1),1))). Для ={SUM(IFERROR(IF(data="",0,1),1))} должен работать (нажмите Ctrl + Shift + Enter в формуле).

Ответ 4

Если у вас есть ячейки с чем-то вроде ="" и вы не хотите их подсчитывать, вам нужно вычесть число пустых ячеек из общего числа ячеек по формуле, например

=row(G101)-row(G4)+1-countblank(G4:G101)

В случае двумерного массива это будет

=(row(G101)-row(A4)+1)*(column(G101)-column(A4)+1)-countblank(A4:G101)

Протестировано в документах google.

Ответ 5

Критерий должен быть "?*" не "<>" поскольку последний также будет считать формулы, содержащие пустые результаты, например ""

Таким образом, самая простая формула будет

=COUNTIF(Range,"?*")