Excel如何提取单元格中的部分文字或单元格中的数字,整理了Excel中所有的提取要求,写成了一个公式翻译工具,适应所有的文字组合方式。
支持以下提取方式,输入提取要求,自动生成Excel公式:
A2中的前几个字
A2中的后几个字
A2中的"年"之前的内容
A2中的"月"之后的内容
A2中的"年"字到"月"字之间的内容
A2中的第2个"-"到第3个"-"之间的内容
A2中的第1组整数
A2中的第2组浮点数
A2中的第1个"-"之前的内容 & A2中的第1个"-"到第2个"-"之间的内容& A2中的第2个"-"到第3个"-"之间的内容
(注意:& 表示文字组合,例如“A”&“,”&"B" = A,B)
等等....
工具地址:
点击:Excel自动写公式工具(根据汉字描述写公式,支持合并单元格公式)
点击:提取单元格内文字中的内容(数字,"x"字与"x"字之间的内容,第几个"x"之前的内容)
操作方式如下图:
示例一,提取第几组浮点数,提取单元格中数字
示例二,提取 第几个"-"到第几个"-"之间的内容:
示例三,提取 前几位
Ctrl + C,复制公式使用即可。
用工具生成了部分公式提供参考借鉴,如果不满足,请使用告知的地址自己生成:
提取要求用工具生成的公式 使用说明
A2中的前3个字=LEFT(A2&"",3)
A2中的后4个字=RIGHT(A2&"",4)
A2中的"年"之前的内容=LEFT(A2&"", FIND("年",A2&"")-1)
A2中的"月"之后的内容=RIGHT(A2&"",LEN(A2&"")-LEN("月")+1-FIND("月",A2&""))
A2中的"年"字到"月"字之间的内容=MID(A2&"",(FIND("年",A2&"")+LEN("年")),FIND("月",A2&"")-(FIND("年",A2&"")+LEN("年")))
注意年在月左边,顺序不要写反了
A2中的第2个"-"到第3个"-"之间的内容=MID(A2&"",(FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-")),FIND("-",A2&"", FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-"))-(FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-")))
A2中的第1组整数=MID(A2&"",SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0),0,1))+1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0),0,1)))>=1,ROW($1:$300),300+1),1),SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0),0,1))+1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0),0,1)))>=1,ROW($1:$300),300+1),2)-SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0),0,1))+1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)*(IF(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0),0,1)))>=1,ROW($1:$300),300+1),1))
数组公式,使用时三键同按
A2中的第2组浮点数=MID(A2&"",SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+0+ (MID(A2&"",ROW($1:$300)+0,1)="."))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0) ) >=1,0,1))+1*(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+0+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+ (MID(A2&"",ROW($1:$300)+0,1)="."))>=1,0,1)))>=1,ROW($1:$300),300+1),3),SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+0+ (MID(A2&"",ROW($1:$300)+0,1)="."))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0) ) >=1,0,1))+1*(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+0+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+ (MID(A2&"",ROW($1:$300)+0,1)="."))>=1,0,1)))>=1,ROW($1:$300),300+1),4)-SMALL(IF((1*(ROW($1:$300)=1)*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+1*(ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+0+ (MID(A2&"",ROW($1:$300)+0,1)="."))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0) ) >=1,0,1))+1*(ISNUMBER(MID(A2&"",ROW($1:$300)-1,1)+0)+0+IFERROR((MID(A2&"",ROW($1:$300)-1,1)="."),0))*(IF(1*(1*ISNUMBER(MID(A2&"",ROW($1:$300)+0,1)+0)+ (MID(A2&"",ROW($1:$300)+0,1)="."))>=1,0,1)))>=1,ROW($1:$300),300+1),3))
数组公式,使用时三键同按
A2中的第1个"-"之前的内容 & A2中的第1个"-"到第2个"-"之间的内容& A2中的第2个"-"到第3个"-"之间的内容=LEFT(A2&"",FIND("-",A2&"") - 1)&MID(A2&"",(FIND("-",A2&"")+LEN("-")),FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))-(FIND("-",A2&"")+LEN("-")))&MID(A2&"",(FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-")),FIND("-",A2&"", FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-"))-(FIND("-",A2&"", FIND("-",A2&"")+LEN("-"))+LEN("-")))
&表示文字相加
工具地址:
点击:Excel自动写公式工具(根据汉字描述写公式,支持合并单元格公式)
点击:提取单元格内文字中的内容(数字,"x"字与"x"字之间的内容,第几个"x"之前的内容)