SumIfs条件数组条件

拉吉

我有一个简单的公式,例如:IFERROR(SUM(SUMIFS(TBL1[SUMCOLUMN],TBL1[ACTIVITY],{"0001","0002","0003"})),0)它有效。

但是我希望{"0001","0002","0003"}零件根据列的值而有所不同,因此我将公式更改为:

IFERROR(SUM(SUMIFS(TBL1[SUMCOLUMN],TBL1[ACTIVITY],IF([@TYPE]="EHT",{"0001","0002","0005"},IF([@TYPE]="CT",{"0003","0004","0007"},"0010")))),0)

而且它仅基于第一个数组值提供给我值。例子:

IF([@TYPE]="EHT",{"0001","0002","0005"} //Gives me sum of only where "0001" and ignores "0002","0005" 
IF([@TYPE]="CT",{"0003","0004","0007"} //Gives me sum of only where "0003" and ignores "0004","0007" 

我以为excel可以将critera转换为文本,因此我使用了不同的方法,例如使用char(34),不同数量的引号,将值放在不同的单元格中以及进行引用,但没有帮助。知道我缺少什么吗?

样本表:TBL1:

SUMCOLUMN ACTIVITY 
5 0001 
20 0002 
50 0003 
... 

TBL2:
此处
类型为EHT总计SUMITFS
此处为
其他SUMIFS
杰里·耶利米(Jerry Jeremiah)

我不知道为什么这样做-这很烦人。但是在您的特定情况下,此方法可以工作:

=IFERROR(SUM(
  IF([@TYPE]="EHT",SUMIFS(TBL1[SUMCOLUMN],TBL1[ACTIVITY],{"0001","0002","0005"}),0),
  IF([@TYPE]="CT",SUMIFS(TBL1[SUMCOLUMN],TBL1[ACTIVITY],",{"0003","0004","0007"}),0),
  SUMIFS(TBL1[SUMCOLUMN],TBL1[ACTIVITY],"0010")
),0)

由于SUMIFS返回结果数组,并且您要对它们求和,而不是尝试使条件成为条件,而将整个SUMIFS作为条件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章