【发布时间】:2017-09-21 08:53:20
【问题描述】:
我需要计算过滤表的列中的唯一值。
公式必须仅在一个单元格中(不添加带有标志的列),并且必须是非易失性(例如,没有偏移)
到目前为止,我有这个野兽:
=IF(COUNTA(A1:A3043) = SUBTOTAL(3, A1:A3043), SUMPRODUCT(1 * (A1:A3043 <> A2:A3044)),SUM(IF(FREQUENCY(IF(SUBTOTAL(3,OFFSET(A1,ROW(A1:A3043)-ROW(A1),0,1)),MATCH(A1:A3043,A1:A3043,0)),ROW(A1:A3043)-ROW(A1)+1)>0,1)))
但是由于它的波动性,过滤大型表时非常慢。
明确地说,如果我在下表中过滤“已购买的商品”,仅包含值 a,那么我的唯一客户数将为 4(customerIDs 1、4、5、 6):
提前致谢。
【问题讨论】: