如何使用数组公式计算来自不同命名Excel表的唯一值?

我有两个表(一个用于捕获每个logging,另一个用于捕获logging摘要)。

跟踪器表 – 列:代码,date,错误消息

汇总表 – 列:代码,错误计数,唯一错误

目前,我使用以下命令从“错误计数”列中的每个应用程序代码中检索总计错误数: {=COUNT(IF([@Code]=Tracker[Code],1))}

即如果我在跟踪表中有以下内容:

1234 | Dec 01 34 | Error 1111 has occurred in Application 1234

1234 | Dec 23 34 | Error 1111 has occurred in Application 1234

1234 | Dec 23 34 | Error 4444 has occurred in Application 1234

然后在总结表中我应该有:

1234 | 3 | 2

我看了这个答案 (下面的公式),我可以针对范围( B2:B100A2:A100 )命名表中的列,但我不知道如何使用行ROW(A2)目标。

=SUM(IF(FREQUENCY(IF(B2:B100=1,IF(A2:A100<>"",MATCH(A2:A100,A2:A100,0))),ROW(A2:A100)-ROW(A2)+1),1))

我用什么数组公式来查找每个错误的唯一编号?

你可以使用这个数组公式:

 =SUM(IFERROR(([@Code]=Tracker[Code])/COUNTIFS(Tracker[Error Message],Tracker[Error Message],Tracker[Code],[@Code]),0)) 

基本的方法是分1买一个特定的Error Message出现的次数,然后SUM那些…这将给你唯一的消息数。

我们在最初的[@Code]=Tracker[Code]一个10来代表分子(即忽略那些不符合Code )以及额外的COUNTIFS条件...,Tracker[Code],[@Code]以便我们只计算Error Message与匹配Code的出现次数

IFERROR是摆脱那些烦人的#DIV/0! 错误的行不匹配…