所以这是我从以前在这里遇到过的简化问题分解而来的:Excel help on combination of Index - match and sumifs?。
对此,我有Table1
(黑色灰色),其中有两列或更多列用于调整各种订单号。参见下面的图片:
我想要实现的是对那些订单编号进行总调整,这些订单编号包含蓝色表中“总调整”列中的编号,每个订单编号都取决于旁边的单元格。
示例:订单号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])
我整天都在寻找解决方案,甚至没有找到任何解决方案。任何建议表示赞赏。
答案 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)