跨多列的条件总和

时间:2019-08-03 06:54:14

标签: regex filter google-sheets sum google-sheets-formula

假设我有A,B,C,E列,并且仅当E中的值不为空并且与A或B或C中的值匹配时,我才想对E(行范围)中的数字求和相应的行。例如,在下面的示例中,A4 = E4和B7 = E7,因此我们将E4 + E7相加。

enter image description here

我知道如何解决此问题的唯一方法是使用两个单独的操作;有条件的if函数,它将匹配值输出到另一列,然后是求和函数,将整个列求和。我想通过一个操作来解决这个问题。

1 个答案:

答案 0 :(得分:2)

=SUM(FILTER(E1:E9, 
 REGEXMATCH(""&E1:E9, ""&A1:A9*1)+
 REGEXMATCH(""&E1:E9, ""&B1:B9*1)+
 REGEXMATCH(""&E1:E9, ""&C1:C9*1)))

0


=ARRAYFORMULA(SUMPRODUCT(IFERROR(IFERROR(
 REGEXEXTRACT(" "&TRIM(TRANSPOSE(QUERY(TRANSPOSE(A1:C9),,999^99)))&" ", " "&E1:E9&" "), 
 REGEXEXTRACT(" "&TRIM(TRANSPOSE(QUERY(TRANSPOSE(A1:C9),,999^99)))&" ", " "&F1:F9&" ")))))

0