1、excel 将中英内容分开本来是想分离中日英内容的,或者某网站的日/英 日文释义,网上搜索了一番看到下面这个,于是兴冲冲地开始分解公式,最后才发现这个原理是按照中英文字符字节不相等写出来的,没法实现我想要的效果呢。不过这么长时间也不能白费,分解如下:假如 A2 单元格中包含中英文混合内容,可以用下面的方法来进行分离:1.使用用公式:在 B2 单元格中输入数组公式:=MID(A2,MATCH(2,LENB(MID(A2,ROW(INDIRECT(“1:“2;3;4;5;6;7;8;9,1)=“学“;“生“;“s“;“t“;“u“;“d“;“e“;“n“;“t“其中1;2;3;4;5;6;7;8;
2、9用 ROW(INDIRECT(“1:“生 “;“s“;“t“;“u“;“d“;“e“;“n“;“t“)=2;2;1;1;1;1;1;1;1MATCH(2,2;2;1;1;1;1;1;1;1,0)=1 找到中文起始位置是在2;2;1;1;1;1;1;1;1里面找到与 2 相同的字符位置,也就是第一位4.最终 MID(A2,2,2),也就得出学生二字,输出在 B2 中。5.=TRIM(SUBSTITUTE(A2,B2,“)SUBSTITUTE(A2,B2,“)=SUBSTITUTE(text,old_text,new_text ,instance_num)也就是将 A2 中的 B2 用空字符替换
3、掉,剩下的就是英文部分了再去掉其中的空格ROW(INDIRECT(“1:“&LEN(A1)返回1,2,.,len(a1)数组INDIRECT(“1:“&LEN(A1)返回 1 至 len(a1)行,row 取行号,len(a1)是 a1 文本长度。INDIRECT 函数返回文本字符串所指定的引用,就是用文本描述单元格(或单元格区域)的名称.它有两个参数,第一个为引用,第二个为类型.其中第二个参数可省(此时为 A1 样式引用).INDIRECT(“a“&5*(ROW()-1)+COLUMN()-1)公式先用 ROW()得到当前单元格的行号,用 COLUMN()函数得到当前单元格的列号,再用 5*
4、(ROW()-1)+COLUMN()-1 得到一个数值与字符“A“连接成一个单元格地址.假定当前单元格为 C5,公式结果:=INDIRECT(“a“&5*(5-1)+3-1)=INDIRECT(“a“&22)=A22 MATCH( )用途:返回在指定方式下与指定数值匹配的数组中元素的相应位置。如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用 MATCH 函数。注意:MATCH 函数返回 lookup_array 中目标值的位置,而不是数值本身。语法:MATCH(lookup_value,lookup_array,match_type)。参数:Lookup_value 为需要在数据表中查
5、找的数值,它可以是数值(或数字、文本或逻辑值)、对数字、文本或逻辑值的单元格引用。Lookup_array 是可能包含所要查找的数值的连续单元格区域,Lookup_array 可以是数组或数组引用;Match_type 为数字-1、0 或 1 ,它说明 Excel 如何在 lookup_array 中查找 lookup_value。如果 match_type 为 1,函数 MATCH 查找小于或等于 lookup_value 的最大数值。如果 match_type 为 0,函数 MATCH 查找等于 lookup_value 的第一个数值。如果 match_type 为-1,函数 MATCH 查找大于或等于 lookup_value 的最小数值。 如果 match_type 为 0 且 lookup_value 为文本,lookup_value 可以包含通配符(“*”和“?”)。星号可以匹配任何字符序列,问号可以匹配单个字符。 实例:如果 A1=68、A2=76、A3=85、A4=90,则公式“=MATCH(90,A1:A5,0)”返回 4。posted 2010-06-16 15:21 arothy 阅读(558) 评论(0) 编辑 收藏 所属分类: 翻译工作 网摘收藏