Excel Sumif,多列中有部分字符串的Sumifs?

时间:2018-10-01 09:57:53

标签: excel excel-formula excel-2010

所以这是我从以前在这里遇到过的简化问题分解而来的:Excel help on combination of Index - match and sumifs?

对此,我有Table1(黑色灰色),其中有两列或更多列用于调整各种订单号。参见下面的图片: enter image description here

我想要实现的是对那些订单编号进行总调整,这些订单编号包含蓝色表中“总调整”列中的编号,每个订单编号都取决于旁边的单元格。

示例:订单号17051有两种产品:17051A(苹果)和17051B(橙色)。

现在我要在单元格C10中实现的是17051A和17051B的调整总和,它们将是:Apple调整(5000)+橙色调整(4500)= 9500。

我在下面(和在图片中)使用的公式始终给我错误消息,即使在为Orange添加调整值之前,这种情况也会发生。

=SUMIF(Text(LEFT(Table1[Order Number],5),"00000"),text(B10,"00000"),Table1[Apple Adjustment])

我整天都在寻找解决方案,甚至没有找到任何解决方案。任何建议表示赞赏。

2 个答案:

答案 0 :(得分:1)

在C10中,您可以添加两个sumproduct。假设开始时乘积始终为5个数字。如果没有选择,请使用5匹配您要匹配的产品参考零件的长度。

=SUMPRODUCT(--(1*LEFT($B$4:$B$7,5)=$B10),$D$4:$D$7)+SUMPRODUCT(--(1*LEFT($B$4:$B$7,5)=$B10),$F$4:$F$7)

使用表语法的是:

=SUMPRODUCT(--(1*LEFT(Table1[Order Number],5)=$B10),Table1[Apple Adjustment])+SUMPRODUCT(--(1*LEFT(Table1[Order Number],5)=$B10),Table1[Orange Adjustment])

使用LEN

=SUMPRODUCT(--(1*LEFT(Table1[Order Number],LEN($B10))=$B10),Table1[Apple Adjustment])+SUMPRODUCT(--(1*LEFT(Table1[Order Number],LEN($B10))=$B10),Table1[Orange Adjustment])

我乘以1以确保Left,5变成数字。

答案 1 :(得分:1)

假设标题中始终包含文本“ adjustment”,则可以使用:

=SUMPRODUCT((LEFT($B$4:$B$7,5)=B10&"")*(RIGHT($C$3:$F$3,10)="adjustment")*$C$4:$F$7)