在 Google 表格中,我想计算一个范围内(C4:U4)
非空非空白单元格的数量。用 来计算非空很容易COUNTIF
。棘手的问题似乎是我想将一个或多个空白的单元格视为空的。(我的用户总是在不可见的单元格中留下空白,我浪费了大量时间清理它们。)
=COUNTIF(C4:U4,"<>")
将具有一个或多个空格的单元格视为非空单元格并对其进行计数。我也尝试过=COUNTA(C4:U4)
,但是遇到了同样的问题,即计算一个或多个空白的单元格。
我在stackoverflow中找到了一个解决方案,被 95 人标记为解决方案,但它不适用于带有空白的单元格。
经过大量阅读,我想出了一个奇特的公式:
=COUNTIF(FILTER(C4:U4,TRIM(C4:U4)>="-"),"<>")
这个想法是在测试单元格大于或等于连字符(我能找到的可打印字符的最低顺序)TRIM
之前删除前导和尾随空格。FILTER
然后该FILTER
函数将一个数组返回给该COUNTIF
函数,该数组仅包含非空和非空白单元格。COUNTIF
然后针对“<>”进行测试
这有效(或至少“似乎”有效)但我想知道我是否错过了一些非常明显的东西。当然,隐藏空白的问题非常普遍,并且自 excel 和 google 表格出现以来就一直存在。必须有一个更简单的方法。
(我的第一个问题对任何违反论坛规则的行为表示歉意。)