如何计算过滤列中的唯一/不同可见值,并考虑空白单元格?

时间:2017-12-18 10:02:08

标签: excel excel-formula

正如我发现的这样的参考文献,那些不包括"假设空白单元格与非空白单元格相同" 重要。

我找到了这个数组公式:(参考:extendoffice.com

=SUM(IF(FREQUENCY(IF(SUBTOTAL(3,OFFSET(D2,ROW(D2:D22)-ROW(D2),,1)), IF(D2:D22<>"",MATCH("~"&D2:D22,D2:D22&"",0))),ROW(D2:D22)-ROW(D2)+1),1))

任何指南都表示赞赏。

更新

enter image description here

F22计算Table1[Column1]

的结果

G22计算Table1[Column2]

的结果

H22计算Table1[Column3]

的结果

我希望公式返回:G22=4&amp; H22=1

注意:我的表格有过滤范围,我计算可见值。

1 个答案:

答案 0 :(得分:2)

在引用的公式中,SUBTOTAL部分用于仅考虑可见单元格.......但它也会忽略空白,因此如果您想将空白包含为另一个不同的值,则需要计算#39;一个问题。

您是否有任何您知道的列将被完全填充(例如A列)?如果是这样,您可以将SUBTOTAL部分作为该列的基础,并将计数区分在相关的实际列上,例如假设A2:A22始终完全填充,请尝试使用此版本计算D2:D22中的不同值(包括空格):

=SUM(IF(FREQUENCY(IF(SUBTOTAL(3,OFFSET($A2,ROW($A2:$A22)-ROW($A2),,1)),MATCH("~"&D2:D22,D2:D22&"",0)),ROW(D2:D22)-ROW(D2)+1),1))

使用 CTRL + SHIFT + ENTER确认