分享

如何将单位前的数字提取出来?

 EXCEL应用之家 2021-09-30


送人玫瑰,手有余香,请将文章分享给更多朋友

动手操作是熟练掌握EXCEL的最快捷途径!



今天和大家分享的还是一道文本处理方面的题目。请看下面。如何将单位前面的数字提取出来?单位有单字符,有双字符,也有包含数字的单位如M2,m3,如果单位内不包含10,100,1000这样内容,则提取为1。



分析一下这个题目,所有的数字都在单位的左侧,因此可以考虑使用LEFT函数配合LOOKUP函数来解决问题。对于那些单位前没有具体数字,而提取1的,可以利用IFERROR函数来处理。


01

我们一起来看看如何利用LOOKUP函数配合LEFT函数来提取数值吧。



在单元格C2中输入公式“=IFERROR(-LOOKUP(,-LEFT(A2,ROW($1:$9))),1)”,并向下拖曳即可。

思路:

  • LEFT函数,从字符串的左侧依次提取长度为1个、2个...、9个字符。这里ROW($1:$9)的用法之前也已经介绍过,不再详细讲了

  • LOOKUP函数提取所需答案

  • 如果单位前没有数字,则LOOKUP函数返回错误值,这时,利用IFERROR函数将错误值转换为“1”,满足题目要求

如果朋友们对LOOKUP函数还不是很熟悉,请参看帖子总结篇-LOOKUP函数实用终极帖


02

TEXT函数也想来凑凑热闹!



在单元格C2中输入公式“=MAX(--TEXT(LEFT(A2,ROW($1:$9)),"0;;;!1"))”,三键回车并向下拖曳即可。

思路:

  • 这里LEFT函数部分和上例是一样的,不再解释了

  • TEXT函数部分,将LFET函数的结果{"1";"10";"10m";"10m3";"10m3";"10m3";"10m3";"10m3";"10m3"}中文本部分强制转换为“1”。它的第二个参数"0;;;!1"的含义是,将大于0的数值按原值显示,将小于0和等于0的值按0来显示,将文本部分强制按“1”来显示

  • 利用减负运算将文本型数值转换为数值型数值

  • 利用MAX函数取得正确的结果

朋友们,今天和大家分享的内容就是这些了。喜欢我写的内容请分享、转发、点赞、收藏吧!如有任何疑问可以私信我哦!

-END-

长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助

我就知道你“在看”

推荐阅读

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多