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,公式会直接返回这个结果。