看以下数据,如何把其中的数字提取出来?如B 列结果所示
我们先来学习下这个提取的思路:
先用LEFT函数把字符依次提取1位、2位、3位。。。数据中的字符最大的不超过10位,共提取10次(字符长的话,可以多提取几次),我们以2.34kg为例,具体如下:
然后把提取结果转化为数字后,用LOOKUP函数的数组形式,提取出结果
具体解决方案:
我们采用数组,用LEFT函数对字符串提取10次,输入公式如下:
=LEFT($A$2,{1,2,3,4,5,6,7,8,9,10})
或者
=LEFT($A$2,ROW(1:10))
提取结果为:
{"2";"2.";"2.3";"2.34";"2.34k";"2.34kg";"2.34kg";"2.34kg";"2.34kg";"2.34kg"}
把提取的结果转化为数字:
=1*LEFT($A$2,{1,2,3,4,5,6,7,8,9,10})
或者
=--LEFT($A$2,{1,2,3,4,5,6,7,8,9,10})
结果为:
{2;2;2.3;2.34;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
非数值的均为错误值
再用LOOKUP函数提取出数组中最后一个数字:
=LOOKUP(9E+307,1*LEFT($A$2,{1,2,3,4,5,6,7,8,9,10}))
祝有所收获!