如下图B列数据为数值与中文或英文组成的混合文本,现在想要将这些混合文本中的数值提取出来。
在C2单元格输入公式=-LOOKUP(1,-LEFT(B2,ROW($A$1:$A$20)))
将C2单元格公式下拉填充到底即可完成
下面跟大家简单介绍一下这个公式,首先是LEFT函数,它是Excel中常用的字符提取函数,它可以从一个文本字符串的第一个字符开始返回指定个数的字符。语法结构是=LEFT(text, [num_chars])
文中【LEFT(B2,ROW($A$1:$A$20))】left函数从B2单元格第一个字符开始依次提取1~20个字符,返回结果为{"4";"42";"42.";"42.6";"42.67";"42.67e";"42.67ex";"42.67exc";"42.67exce";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel";"42.67excel"}
然后利用“-”负号将left函数返回结果中的数值转为负数,而非数值转变为错误值{-4;-42;-42;-42.6;-42.67;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!})
接着我们利用lookup函数查找出最后一次小于等于1的数值,最后使用负号将这个数值转为正数。即可完成数值的提取。
,