提取并汇总单元格中多次出现的数字

问题描述 投票:0回答:1

假设我有一行看起来像这样(|是单元格分隔符):

1h foo | 0.5h bar, 0.5h baz | 6h blah, 1h bah

我想连续计算所有小时数,所以上面的例子会输出9。

这是我到目前为止所做的,但我不知道如何在一个单元格中多次出现数字(如0.5h bar, 0.5h baz)。有什么建议?

=arrayformula(sum(if(isNumber(B3:F3),B3:F3,iferror(value(regexextract(B3:F3,"\d+(?:\.\d+)?")),0))))

regex google-sheets formulas
1个回答
1
投票

对于REGEXTRACT的第一个参数,使用逗号应用JOIN,然后用逗号SPLIT。假设以下数据在A1:C1上

1h foo | 0.5h bar, 0.5h baz | 6h blah, 1h bah

如果你将它应用于B3

=ArrayFormula(split(join(",",A1:C1),","))

然后你的公式很好。

© www.soinside.com 2019 - 2024. All rights reserved.