EXCEL中怎么把单元格中的数值提取出来?

如题所述

可选用以下方法提取:
1、给出数字的起始位置和长度。示例公式:=--mid(a1,5,3)
公式结果为提取A1单元格中从第5位开始的3个数字。
2、提取某特定字符串后的数字。示例公式:=-lookup(0,-mid(a1,find("ABC",a1)+LEN("ABC"),row(1:99)))
公式结果为提取A1单元格中字符串ABC之后的数字。
3、数字在一侧其他则中文字符组成。示例公式:数字在前,公式=left(a1,2*len(a1)-lenb(a1));数字在后,公式=right(a1,2*len(a1)-lenb(a1))
4、没有给出任何条件,只要求将单元格中的数字提出。通用公式=-lookup(0,-mid(a1,min(find(row(1:10)-1,a1&1/17)),row(1:99)))
按组合键ctrl+shift+enter结束公式。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-26
可选用以下方法提取:
1、给出数字的起始位置和长度。示例公式:=--mid(a1,5,3) 公式结果为提取A1单元格中从第5位开始的3个数字。
2、提取某特定字符串后的数字。示例公式:=-lookup(0,-mid(a1,find("ABC",a1)+LEN("ABC"),row(1:99))) 公式结果为提取A1单元格中字符串ABC之后的数字。
3、数字在一侧其他则中文字符组成。示例公式:数字在前,公式=left(a1,2*len(a1)-lenb(a1));数字在后,公式=right(a1,2*len(a1)-lenb(a1))
4、没有给出任何条件,只要求将单元格中的数字提出。通用公式=-lookup(0,-mid(a1,min(find(row(1:10)-1,a1&1/17)),row(1:99))) 按组合键ctrl+shift+enter结束公式。
第2个回答  2020-04-29
可以参考:
乱序下的数字求和
普通公式完成(升级了)
=SUMPRODUCT(TEXT(LEFT(TEXT(MID(A9&"A",ROW($1:$100),COLUMN($A:$P)),),COLUMN($A:$P)-1),"G/通用格式;-G/通用格式;0;!0")*ISERR(-MID(A9,ROW($1:$100)-1,2)))
=SUM(MID(A9,SMALL(IF(ISNUMBER(-MID(A9,COLUMN(9:9),1)),COLUMN(9:9)),ROW(INDIRECT("1:"&COUNT(-MID(A9,COLUMN(9:9),1))))),1)/10^(ROW(INDIRECT("1:"&COUNT(-MID(A9,COLUMN(9:9),1))))))*10^COUNT(-MID(A9,COLUMN(9:9),1))
第3个回答  2020-04-29
公式(不管数值在前,中间,后都可以,以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)))))