抹黑

EXCEL如何提取单元格中的数值?
比如说A1的值为1234mmm,A2的值为122mm。如何利用函数或公式将A1和A2中的数值提取出来呢?公式(不管数值在前,中间,后都可以,以A1为例):=LOOKUP(9E+307,–MID(A1,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A1&1234567890)),ROW(INDIRECT("1:"&LEN(A1)))))或者:B2=-LOOKUP(,-MID(A2,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A2&1234567890)),ROW($1:$1024)))解读:1、FIND()告诉我,0-9在文本中第一次出现的位置。用Find()在指定的文本中查找0-9,会返回第一次出现的位置,如果没有会返回一个错误值,在文本后面连接上1234567890,让Find()不再有借口返回错误值,请放心,它不会影响后面的结果。在编辑栏中,像下面一样,用鼠标将这一段文本抹黑,然后按F9。=LOOKUP(9E+307,–MID(A1,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A1&1234567890)),ROW(INDIRECT("1:"&LEN(A1)))))2、对着 Min(),王小丫说:恭喜你,答对了,第一个数字在第3位。如果你还怀疑,可以这再次抹黑,并按F9。=LOOKUP(9E+307,–MID(A1,MIN({7;8;5;12;13;3;4;16;17;18}),ROW(INDIRECT("1:"&LEN(A1)))))3、神奇魔术师 Mid() ,一个文本变出许许多多。让事实说话,继续抹抹黑,按F9。开始位置不变,长度依次增1,形成一个数组,数组的个数等于文本长度(Row()的结果)。后面的会出现相同的情况,没关系,还是不影响结果的。=LOOKUP(9E+307,–MID(A1,3,ROW(INDIRECT("1:"&LEN(A1)))))4、如果忽略了–,还是功亏一篑。看看,它的结果会是什么呢?=LOOKUP(9E+307,–{"5";"56";"562";"562.";"562.0";"562.00";"562.00元";"562.00元";"562.00元"})