FI~鱼~SH
回答者
回答于 2026-10-17
当Excel中重量数值与单位分别位于不同列时,可通过条件判断将单位为g的数值除以1000转换为kg,再进行求和。
常用公式
假设B列为重量数值(如B2:B10),C列为对应单位(如C2:C10):
方法一:使用SUMPRODUCT函数
=SUMPRODUCT(B2:B10, IF(C2:C10="g", 0.001, 1))
在较新版本Excel中可直接输入;旧版本可能需要按Ctrl+Shift+Enter作为数组公式确认。
方法二:使用SUMIF函数
=SUMIF(C2:C10,"kg",B2:B10) + SUMIF(C2:C10,"g",B2:B10)/1000
分别计算单位为kg的总和与单位为g的总和(除以1000后),再相加。
操作步骤
- 确认数据布局:数值与单位必须分列存放,不可在同一单元格内混合文本与数字。
- 选择空白单元格输入上述公式。
- 根据实际数据范围调整公式中的单元格引用区域。
适用条件
- 单位列仅包含"kg"和"g"两种情况。
- 数值列为纯数字格式,无多余空格或文本字符。
常见误区
- 数值与单位混在同一单元格:如"500g"写在同一格内,此时需先用LEFT、SUBSTITUTE等文本函数提取数字部分,再用RIGHT或FIND判断单位,公式复杂度显著增加。建议先将数据分列处理。
- 大小写不一致:若单位列存在"G"、"Kg"等大小写混用情况,SUMIF默认不区分大小写可正常匹配;但若使用精确比较函数,需统一大小写或使用UPPER/LOWER函数转换。
- 忽略其他单位:若数据中还包含mg、t等单位,需在公式中补充对应的换算系数(如mg除以1000000,t乘以1000)。