1、利用公式提取靠左边的字符串公式

Row($1:$9),产生0至9的字符串数组,$9表示所取数字的最大长度,可调整;

Left(D1,row($1:$9)),依次将D1单元格中字符串返回,这里提取的结果是{3;34;340;3401;34010;340105;3401056;3401056小;3401056小时}

加负号转化为数值后结果为{-3;-34;-340;-3401;-34010;-340105;-3401056;#VALUE!;#VALUE!;}

最后是LOOKUP函数,用1作为查询值,在由负数、0和错误值构成的数组中,忽略错误值,提取最后一个等于或小于1的数值,再次加负号,将负数变成正数。

得到公式=-LOOKUP(1,-LEFT(D1,ROW($1:$9)))


2、利用公式提取靠右边的字符串公式

=-LOOKUP(1,-right(D1,ROW($1:$9)))


3、在字符串夹带数字的情况下提取数字的通用公式:本例只适用于字符夹带一串数字的情况

=-LOOKUP(1,-RIGHT(LEFT(D1,LOOKUP(10,--MID(D1ROW($1:$20),1),ROW($1:$20))),ROW($1:$20)))