Excel Sumif,在多列中包含部分字符串的 Sumif?
Excel Sumif, Sumifs with partial strings in multiple columns?
所以这是我从以前的问题中分解出来的简化问题: .
对于这个,我有 Table1
(黑灰色的)有两列或更多列用于调整各种订单号。请参见下图:
我想要实现的是对那些包含蓝色 table 总调整列中数字的订单号进行总调整,每个调整都取决于它旁边的单元格。
示例:订单号 17051 有两个产品:17051A(Apple)和 17051B(Orange)。
现在我要在单元格 C10 中实现的是 17051A 和 17051B 的调整总和,即:Apple Adjustment (5000) + Orange Adjustment (4500) = 9500。
我在下面(和图像中)使用的公式一直给我错误消息,甚至在我添加橙色调整之前就发生了这种情况。
=SUMIF(Text(LEFT(Table1[Order Number],5),"00000"),text(B10,"00000"),Table1[Apple Adjustment])
我花了一整天的时间寻找解决方案,但几乎没有找到任何解决方案。任何建议表示赞赏。
在 C10 中,您可以添加两个和积。这假设产品一开始总是 5 个数字长。如果不是交换 5 以使用您正在匹配的产品参考部分的长度。
=SUMPRODUCT(--(1*LEFT($B:$B,5)=$B10),$D:$D)+SUMPRODUCT(--(1*LEFT($B:$B,5)=$B10),$F:$F)
table 语法是:
=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 以确保左,5 变成数字。
假设您的 headers 中始终包含文本 "adjustment",您可以使用:
=SUMPRODUCT((LEFT($B:$B,5)=B10&"")*(RIGHT($C:$F,10)="adjustment")*$C:$F)
所以这是我从以前的问题中分解出来的简化问题:
对于这个,我有 Table1
(黑灰色的)有两列或更多列用于调整各种订单号。请参见下图:
我想要实现的是对那些包含蓝色 table 总调整列中数字的订单号进行总调整,每个调整都取决于它旁边的单元格。
示例:订单号 17051 有两个产品:17051A(Apple)和 17051B(Orange)。
现在我要在单元格 C10 中实现的是 17051A 和 17051B 的调整总和,即:Apple Adjustment (5000) + Orange Adjustment (4500) = 9500。
我在下面(和图像中)使用的公式一直给我错误消息,甚至在我添加橙色调整之前就发生了这种情况。
=SUMIF(Text(LEFT(Table1[Order Number],5),"00000"),text(B10,"00000"),Table1[Apple Adjustment])
我花了一整天的时间寻找解决方案,但几乎没有找到任何解决方案。任何建议表示赞赏。
在 C10 中,您可以添加两个和积。这假设产品一开始总是 5 个数字长。如果不是交换 5 以使用您正在匹配的产品参考部分的长度。
=SUMPRODUCT(--(1*LEFT($B:$B,5)=$B10),$D:$D)+SUMPRODUCT(--(1*LEFT($B:$B,5)=$B10),$F:$F)
table 语法是:
=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 以确保左,5 变成数字。
假设您的 headers 中始终包含文本 "adjustment",您可以使用:
=SUMPRODUCT((LEFT($B:$B,5)=B10&"")*(RIGHT($C:$F,10)="adjustment")*$C:$F)