使用正则表达式的范围总和
Range sum using regex
我有一个包含以下数据的电子表格:
|A |B |C |D |
+---+-----+--------+--------+--------+
|1 |Day |Result 1|Result 2|Result 3|
+---+-----+--------+--------+--------+
|2 |Feb 1|A10-2 |B10-5 |B10-9 |
+---+-----+--------+--------+--------+
|3 |Feb 2|A10-9 |A10-9 | |
+---+-----+--------+--------+--------+
|4 |Feb 3|B10-8 |A10-2 |B10-7 |
我想得到每个单元格中第二个数字的总和,基于第一个字母的两个总数。换句话说,我想要第一个字母为 A
的第二个数字的总和,以及第一个字母为 B
.
的第二个数字的总和
因此,对于 A
,我希望得到 22
(2+9+9+2),对于 B
,我希望得到 29
(5+9+8+7).
我已经用REGEXEXTRACT
得到了第二个数字,例如:
=REGEXEXTRACT(B2,"A10-(\d+)")
这给了我 2
。但是,如果我尝试:
=REGEXEXTRACT(B2:D4,"A10-(\d+)")
要检查所有单元格,我得到 找不到数组值,我不确定还能尝试什么。
我想要的伪代码是这样的:
=SUM(REGEXEXTRACT(B2:D4,"A10-(\d+)"))
但我不确定这是否可行。
将A
和B
放在某处(比如在E2和E3中)然后输入并复制:
=sum(ArrayFormula(value(right(B:D))*--ArrayFormula(left(B:D)=E2)))
大概可以简化,但要求似乎太专业了,不值得多费心。
我有一个包含以下数据的电子表格:
|A |B |C |D |
+---+-----+--------+--------+--------+
|1 |Day |Result 1|Result 2|Result 3|
+---+-----+--------+--------+--------+
|2 |Feb 1|A10-2 |B10-5 |B10-9 |
+---+-----+--------+--------+--------+
|3 |Feb 2|A10-9 |A10-9 | |
+---+-----+--------+--------+--------+
|4 |Feb 3|B10-8 |A10-2 |B10-7 |
我想得到每个单元格中第二个数字的总和,基于第一个字母的两个总数。换句话说,我想要第一个字母为 A
的第二个数字的总和,以及第一个字母为 B
.
因此,对于 A
,我希望得到 22
(2+9+9+2),对于 B
,我希望得到 29
(5+9+8+7).
我已经用REGEXEXTRACT
得到了第二个数字,例如:
=REGEXEXTRACT(B2,"A10-(\d+)")
这给了我 2
。但是,如果我尝试:
=REGEXEXTRACT(B2:D4,"A10-(\d+)")
要检查所有单元格,我得到 找不到数组值,我不确定还能尝试什么。
我想要的伪代码是这样的:
=SUM(REGEXEXTRACT(B2:D4,"A10-(\d+)"))
但我不确定这是否可行。
将A
和B
放在某处(比如在E2和E3中)然后输入并复制:
=sum(ArrayFormula(value(right(B:D))*--ArrayFormula(left(B:D)=E2)))
大概可以简化,但要求似乎太专业了,不值得多费心。