excel数字汉字分离整理.docxVIP

  • 3
  • 0
  • 约1.14千字
  • 约 2页
  • 2017-06-08 发布于北京
  • 举报
试用条件:数字在前,文字在后 =-LOOKUP(0,-LEFT(A23,ROW($1:$1024))) 取出数字: =LOOKUP(9E+307,--MID(A2,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A21234567890)),ROW($1:$1022))) 取出文字: =SUBSTITUTE (A1, =LOOKUP(9E+307,--MID(A2,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A21234567890)),ROW($1:$1022))) ,) FIND({0;1;2;3;4;5;6;7;8;9},A21234567890) : 0-9在A2中的位置。为了防止A2中没有某个数字而出现错误值,因此在A2后面连接上1234567890。这样每个数字都能找到位置了,如果A2中没有,是在后面连接的数字中找到的,FIND返回的数字会大于A2的长度,用函数表示即 LEN(A2) MIN(FIND({0;1;2;3;4;5;6;7;8;9},A21234567890)) : 第一个数字所在的位置。将其做为MID的第二个参数。 (其中MID(text,start_num,num_chars)为截取字符函数,第一个参数表示要从那个单元格中截取,其也可以为自制的字符串;第二个参数表示指定的截取位置,第三个参数表示要截取的数目) MID()取出来的是文本类数字。欲将纯数字段的转化为错误值,纯数字段的转化为真正的数字,要在MID()前面加上— 整个MID()计算出来的值作为lookup的第二个参数,即取小于9E+307(工作表中的最大数值)的最大值 ROW($1:$1022) : Row($1:$1022)返回1到1022的行号 分别取一个,二个,三个,一直到1022个 Lookup向量形式用法: LOOKUP(lookup_value, lookup_vector, [result_vector]) =LOOKUP(4.19, A2:A6, B2:B6) 在 A 列中查找 4.19,然后返回 B 列中同一行内的值。 =LOOKUP(5.00, A2:A6, B2:B6) 在 A 列中查找 5.00,与接近它的最小值 (4.19) 匹配,然后返回 B 列中同一行内的值。 =LOOKUP(7.66, A2:A6, B2:B6) 在 A 列中查找 7.66,与接近它的最小值 (6.39) 匹配,然后返回 B 列中同一行内的值。 =LOOKUP(0, A2:A6, B2:B6) 在 A 列中查找 0,并返回错误,因为 0 小于 lookup_vector A2:A7 中的最小值。

文档评论(0)

1亿VIP精品文档

相关文档