将单元格中的数字提取出来并相加

Excel中某列(A1)存在中文与数字,现在需要将其数字提出并相加

=SUM(--TEXTSPLIT(CONCAT(IF(ISNUMBER(--MID(A1,SEQUENCE(LEN(A1)),1)),MID(A1,SEQUENCE(LEN(A1)),1),"|")),,"|",TRUE))

公式原理:

遍历每个字符:MID(A1,SEQUENCE(LEN(A1)),1) 提取文本中每个字符(从第 1 个到最后 1 个)。

判断是否为数字:ISNUMBER(--MID(...)) 识别出所有数字字符。

替换非数字为分隔符:IF(...) 将数字字符保留,非数字字符替换为分隔符 |。

合并字符:CONCAT(...) 将处理后的字符合并成一串(例如 "8|24|25|...")。

拆分数字:TEXTSPLIT(...,,"|",TRUE) 按 | 拆分出所有数字字符串(如 "8"、"24" 等)。

转为数值并求和:-- 将文本数字转为数值,SUM(...) 计算总和。

结果验证:

针对你的文本,提取的数字为:8、24、25、4、2、10、30、4、6、8、48、25,总和为 194,公式会直接返回这个结果。