根据不断变化的条件对Excel单元格中的值求和

根据不断变化的条件对Excel单元格中的值求和,excel,sumifs,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。在本例中,是第

在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))
&

这就给我留下了两个数据数组:

      D          E                            
1   d-45        150                                                     
4   d-46         20                            
5   d-45         70 
现在我想根据D列中的ID对E列中的值求和,在本例中是第1行和第5行。我可以使用一个直接的
SUMIFS
语句来指定
d-45
作为标准,但是该唯一ID将始终更改。我是否可以使用
SUMIFS
的变体

我还希望将ID编号的每个新变化放在单独的标题中,标题下方为总计,即:

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

您可以尝试以下方法:

要获取不同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,复制正确)

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

试试这个

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

其中,
表示单元格不是空的…

?数据透视表将拥有此核心,请与simoco达成一致。尤其是结尾的标题。是的,这可能会奏效,但是我希望每次在单独的电子表格上添加勾号时,最终结果或相对于每个ID的总和都会自动更新。我可以用数据透视表来做这件事吗?好的数据透视表它是>>@SaranJackson您可以根据需要“刷新”数据透视表。您可能还希望Pivot数据源较长,以便还可以捕获新插入的行。该方法的唯一缺点可能是透视表的最后一行中有
(空白)
=SUMPRODUCT(($A$1:$A$5=H1)*ISTEXT($C$1:$C$5)*$B$1:$B$5)
SUMIFS
=SUMIFS(B1:B5,A1:A5,"=d-45",C1:C5,"<>")