我们在工作中,经常会遇到带单位的数据运算,比如对带有单位的数据求和、提取不同单位中的数值,合并不同单位的数量等等。下面就通过 5 个典型的案例,一起和大家探讨,如何应对处理这些带单位的数据。
微软Office LTSC 2021专业增强版 简体中文批量许可版 2023年07月更新
- 类型:办公软件
- 大小:2.2GB
- 语言:简体中文
- 时间:2023-07-31
查看详情
1、带单位的数字求和
如下图,对 C 列的金额求和。
❶ 首先用 SUBSTITUTE 函数将 C 列中的字符 "元" 替换成空字符:
=SUBSTITUTE(C3:C8"元""")
❷ 这时生成的一列数字还是文本型的,不能直接求和,需要在前面加两个负号转换成数值:
=--SUBSTITUTE(C3:C8"元""")
❸ 最后就可以用 SUM 函数,对转化后的数值求和,得到最终结果:
=SUM(--SUBSTITUTE(C3:C8,"元",""))
2、提取不同单位中的数值
如下图,从 B 列带有不同单位的文本中,提取数值到 C 列:
❶ 首先用 ROW ($1:9) 生成一组由 1 开始递增的序列值:
=ROW($1:9)
❷ 然后以这组序列值作为 LEFT 函数的第二个参数,由左至右逐一扩展截取当前 B 列文本中的字符,生成一列文本数组:
=LEFT(B3,ROW($1:9))
❸ 最后用 LOOKUP 函数,在这列数组中找到最后一个数值,返回结果:
3、拆分带有多个单位的文本
如下图,从 C 列中拆分带有多个单位的数字到 D:F 列:
❶ 首先用 LEFT 函数从当前 C 列的文本中,提取单位前面的字符:
=LEFT($C3,FIND(D$2$C3)-1)
❷ 然后用 RIGHT 函数,由右至左逐一扩展提取字符的个数,截取字符,生成一列数组:
=RIGHT(LEFT($C3,FIND(D$2, $C3)-1)ROW($1:9))
❸ 接着用 LOOKUP 函数,在这列数组中找到最后一个数值,再填充复制公式:
=-LOOKUP( 1, -RIGHT( LEFT($C3, FIND(D$2, $C3) - 1), ROW($1:9) ))
❹ 最后用 IFNA 函数屏蔽公式中的错误值(#N / A)返回结果:
=IFNA( -LOOKUP( 1, -RIGHT( LEFT($C3, FIND(D$2, $C3) - 1), ROW($1:9) ) ), "")
上一页12 下一页 阅读全文