根据更改条件对Excel单元格中的值求和

时间:2014-02-17 22:45:27

标签: excel sumifs

在Excel电子表格中,我有三列数据,第一列A是唯一标识符。 B列是数字,C列是刻度线或空格:

      A          B          C
1    d-45       150         √
2    d-46       200
3    d-45        80 
4    d-46        20         √
5    d-45        70         √

现在,我希望对B列中的值进行求和,具体取决于存在的勾号以及相对于A列中的唯一ID。在这种情况下,第1行和第5行。识别我使用的勾号

=IF(ISTEXT(C1),CONCATENATE(A1))

&安培;

=IF(ISTEXT(C1),CONCATENATE(B1)).

这给我留下了两个数据阵列:

      D          E                            
1   d-45        150                                                     
4   d-46         20                            
5   d-45         70 

我现在想要对E列中的值求和,具体取决于D列中的ID,在本例中为第1行和第5行。我可以使用直接SUMIFS语句将d-45指定为但是这个唯一ID会随时更改。我可以使用SUMIFS的变体吗?

我还希望将ID号的每个新变体放入一个单独的标题中,其总和位于下方,即:

       A         B 
1   d-45      d-46
2    220        20

等...

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

获取不同的ID写入(在H1中然后复制权限): 这是一个数组公式,因此您需要按Ctrl Shift Enter输入公式

=INDEX($A$1:$A$5;SMALL(IF(ROW($A$1:$A$5)-ROW($A$1)+1=MATCH($A$1:$A$5;$A$1:$A$5;0);ROW($A$1:$A$5)-ROW($A$1)+1;"");COLUMNS($A$1:A1)))

现在得到总和(H2和副本右)

=SUMPRODUCT(($A$1:$A$5=H1)*ISTEXT($C$1:$C$5)*$B$1:$B$5)

示例中的数据位于A1:C5中 根据您的区域设置,您可能需要替换“;”字段分隔符“,”

答案 1 :(得分:0)

尝试一下

SUMIFS
=SUMIFS(B1:B5,A1:A5,"=d-45",C1:C5,"<>")

其中"<>"表示该单元格不为空...