我找遍了所有地方,还是没找到一个简单的解决方案。希望有解决方案。
我有 3 个包含字母数字字符串的随机单元格。例如:A3="1L"、B12="2R" 和 H5="3T" 等等。笔记:这些单元格不在一个范围内,它们是随机的。
Excel 中是否有一个公式可以对这 3 个单元格的数值求和?即得出这些单元格的总和或 6。
感谢帮助,
谢谢,肖恩。
答案1
你可以尝试这个公式:
=SUM(IFERROR(LEFT(A1:J10,LEN(A1:J10)-1),0)*1)
根据需要调整范围。
这将覆盖整个范围,删除每个范围的最后一个字符,然后将它们加在一起。
如果你确实只有L
或R
但可以有像这样的裸数字10
,那么你可以改用这个:
=SUM(IFERROR(SUBSTITUTE(SUBSTITUTE(A1:J10,"R",""),"L","")*1,0))
注意:由于上述两个公式都是数组公式,因此在将它们输入单元格后都应使用Ctrl++Shift来调用。Enter
编辑:要获取备用列,您可以使用以下命令:
=SUM(IFERROR(SUBSTITUTE(SUBSTITUTE($C4:$R4,"R",""),"L","")*{1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0},0))
再次强调,您需要使用Ctrl++才能使其正常工作。ShiftEnter
对于下一列(应该安装的列),只需更改 1 和 0 的顺序:
=SUM(IFERROR(SUBSTITUTE(SUBSTITUTE($C4:$R4,"R",""),"L","")*{0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1},0))
请注意,范围内的每个单元格都有一个数字(C4:R4 有 16 个单元格,因此有 8 个 1 和 8 个 0)
答案2
没有神奇的公式可以将这些单元格转换为数字。您必须使用字符串操作才能完成此操作。如果您的数字始终是一位数,则可以使用:
=VALUE(LEFT(A2,1))
提取最左边的字符并将其转换为数字。如果您的数字是可变长度,但右侧始终有一个字母,则可以使用:
=VALUE(LEFT(A2,LEN(A2)-1))
希望这能有所帮助。一个好的正则表达式解析器是 Excel 缺少的主要功能之一。值得注意的是,在 Google 电子表格中做到这一点非常容易,使用类似以下内容:(未经测试)
=VALUE(REGEXREPLACE(A2,"[A-Z]",""))