Excel中带单位的文本数字需先提取纯数值再求和:可用SUBSTITUTE嵌套替换法、LET+REDUCE数组公式、分列功能或Power Query四种方法,分别适用于单位固定、新版Excel、批量非公式处理及复杂单位场景。

如果您在Excel表格中遇到带有单位的文本数字(例如“123元”“45.6千克”“789米”),这些内容被识别为文本而非数值,直接使用SUM函数将返回0。以下是提取纯数值并完成求和的具体操作方法:
一、使用SUBSTITUTE嵌套替换法逐个清除单位
该方法适用于单位固定且字符单一的情况(如统一为“元”“kg”“m”),通过多层SUBSTITUTE函数将所有已知单位替换为空,再用VALUE转为数值。
1、在空白列(如B1)输入公式:=VALUE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"元",""),"千克",""),"米",""))
2、按Enter确认,B1将显示A1中去除单位后的纯数字
3、选中B1单元格右下角填充柄,向下拖拽至覆盖全部数据行
4、在任意空白单元格输入求和公式:=SUM(B1:B100)(根据实际数据范围调整)
二、使用正则表达式风格的数组公式(适用于Microsoft 365或Excel 2021)
该方法利用TEXTJOIN与SEQUENCE生成数字字符序列,配合FILTERXML(需配合XML结构)或更稳定的LET+REDUCE组合,但标准兼容方案推荐使用REGEXREPLACE(仅限支持LAMBDA及正则函数的版本)。此处提供兼容性更强的LET+SUBSTITUTE动态构建方案。
1、在空白单元格输入以下公式(假设数据在A1:A10):=SUM(LET(arr,A1:A10,nums,REDUCE("",arr,LAMBDA(acc,val,acc&TEXTJOIN("",,IF(ISNUMBER(--MID(val,SEQUENCE(LEN(val)),1)),MID(val,SEQUENCE(LEN(val)),1),"")))&",")),--FILTERXML(""&SUBSTITUTE(nums,",","")&"
2、按Ctrl+Shift+Enter(旧版Excel)或直接按Enter(新版)执行数组运算
3、结果即为自动提取并求和的纯数值总和
三、借助分列功能进行非公式批量处理
该方法无需编写公式,适合一次性清洗大量数据,利用Excel内置“分列”工具按指定字符分割,保留左侧纯数字部分。
1、选中含单位的数据列(如A列),点击【数据】选项卡 → 【分列】
2、在向导中选择【分隔符号】→ 点击【下一步】
3、取消所有默认勾选,仅在【其他】框中输入单位字符(如输入“元”,若存在多种单位需分多次操作)→ 点击【下一步】
4、在列数据格式中选择【常规】或【数值】→ 点击【完成】
5、此时原列被拆分为两列,左侧列为纯数字,选中该列后使用=SUM(该列地址)完成求和
四、使用Power Query进行结构化清洗(适用于长期重复处理)
该方法适合单位不统一、含空格或复合单位(如“12.5 千克/箱”)等复杂场景,可保存查询步骤实现一键刷新。
1、选中数据区域 → 【数据】选项卡 → 【从表格/区域】→ 勾选【表包含标题】→ 确定
2、在Power Query编辑器中,右键点击含单位的列 → 【转换】→ 【提取】→ 【非数字字符之前的文本】
3、若上步未完全提取,再点击该列 → 【转换】→ 【数据类型】→ 【小数】或【整数】(自动报错项将变为空)
4、点击【主页】→ 【关闭并上载】→ 数据以新工作表形式载入,其中该列已为数值型
5、在新工作表中对清洗后列使用=SUM(该列)得出结果










