10000,RO"> 10000,RO" />
欢迎来到天天文库
浏览记录
ID:8969877
大小:44.00 KB
页数:9页
时间:2018-04-13
《excel混合字符串中提取汉字》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Excel混合字符串中提取汉字2007-02-0712:00一、wq23412421小刀提取:小刀公式=MID(A1,MIN(IF(CODE(MID(A1,ROW(INDIRECT("A1:A"&LEN(A1))),1))>10000,ROW(INDIRECT("A1:A"&LEN(A1))))),1000)因为是数组公式,所以Ctrl+Shift+Enter键结束公式的输入。二、小刀df453453提取:小刀=MID(A1,1,MIN(IF(CODE(MID(A1,ROW(INDIRECT("A1:A"&L
2、EN(A1))),1))<10000,ROW(INDIRECT("A1:A"&LEN(A1)))))-1)因为是数组公式,所以Ctrl+Shift+Enter键结束公式的输入。小刀df43525252提取:小刀不用数组公式=LEFTB(A1,SEARCHB("?",A1)-1)三、如果要提取的是非汉字部分怎么办?请用SUBSTITUTE函数例如:=SUBSTITUTE(A1,以上得出的数据,"")四、提取汉字的另类方法(1)打开word,将要转换的数据复制->粘贴到word。(2)选择要转化的范围,点word
3、的编辑->替换。(3)查找内容为^$替换为啥也不写,全部替换----意思是所有替换字母为空。(4)查找内容为^#替换为啥也不写,全部替换----意思是所有替换数字为空。(5)将处理完word的数据,复制->粘贴回Excel。谢谢qinqh_yl的指正。看来以后的东东我要好好验证,以免出错。用函数在Excel中从文本字符串提取数字Excel输入数据过程中,经常出现在单元格中输入这样的字符串:GH0012JI、ACVB908、华升12-58JK、五香12.56元、0001#、010258等。在进行数据处理时,又需
4、要把其中的数字0012、908、12-58、12.56、0001提取出来。如何通过使用Excel的工作表函数,提取出字符串中的数字?一、问题分析对于已经输入单元格中的字符串,每一个字符在字符串中都有自己固定的位置,这个固定位置都可以用序列数(1、2、3、……)来表示,用这些序列数可以构成一个可用的常数数组。以字符串“五香12.56元”为例:序列数1、2、3、4、5、6、7、8分别对应着字符串“五香12.56元”中字符“五”、“香”、“1”、“2”、“.”、“5”、“6”、“元”。由序列数组成一个保存在内存中的
5、新数组{1;2;3;4;5;6;7;8}(用列的形式保存),对应字符串中的字符构成的数组{“五”;“香”;“1”;“2”;“.”;“5”;“6”;“元”}。因此解决问题可以从数组着手思考。二、思路框架问题的关键是,如何用序列数重点描述出字符串中的数字部分的起始位置和终止位置,从而用MID函数从指定位置开始提取出指定个数的字符(数字)。不难看出,两个保存在内存中的新数组:{“五”;“香”;“1”;“2”;“.”;“5”;“6”;“元”}{1;2;3;4;5;6;7;8}数组具有相同大小的数据范围,而后一个数组中
6、的每一个数值可以准确地描述出字符串中字符位置。字符与序列数的对应关系如下表所示:字符 字符位置五 —— 1香 —— 21 —— 32 —— 4. —— 55 —— 66 —— 7元 —— 8所以解决问题的基本框架是:用MID函数从字符串的第一个数字位置起提取到最后一个数字止的字符个数。即{=MID(字符串,第一个数字位置,最后一个字符位置-第一个字符位置+1}。其中“+1”是补上最后一个数字位置减去第一个数字位置而减少的一个数字
7、位。三、解决方案及步骤假定字符串输入在A2单元格。⑴确定A2中字符串的长度。即用LEN函数计算出A2中字符串中字符的个数,这个字符个数值就是字符串中最后一个字符在字符串中的位置:=LEN(A2)。⑵确认字符串中的每一个字符位置序列数组成的新数组。用INDIRECT函数返回一个由文本字符串指定的引用:=INDIRECT("1:"&LEN($A2))用返回行数的函数ROW确定文本引用INDIRECT("1:"&LEN($A2))构成的新数组:{=ROW(INDIRECT("1:"&LEN($A2)))}⑶用按指定
8、位置开始返回指定个数字符的函数MID返回由新数组{=ROW(INDIRECT("1:"&LEN($A2)))}确定位置的每一个字符,并将文本转化成数值型数据:{=--MID($A2,ROW(INDIRECT("1:"&LEN($A2))),1)}注意:函数MID返回的字符是文本,将文本转化为数值型数据,可以用函数VALUE,也可以同等功能地用符号“- -”或“+0”或“-0”简化表达,这里用“- -
此文档下载收益归作者所有