高级文本公式

1:下面两个公式分别统计单元格A1中字符B的个数

=LEN(A1) - LEN(SUBSTITUTE(A1,"B",""))(只限大写)

=LEN(A1) - LEN(SUBSTITUTE(SUBSTITUTE(A1,"B",""),"b",""))(不限大小写)

2:把数字用序数来表示(例:21--〉21st)

=A1&IF(OR(VALUE(RIGHT(A1,2))={11,12,13}),"th",IF(OR(VALUE(RIGHT(A1)) = {1,2,3}),CHOOSE(RIGHT(A1),"st","nd","rd"),"th"))

CHOOSE(index_num,value1,value2,...)

Index_num   用以指明待选参数序号的参数值。Index_num 必须为 1 到 29 之间的数字、或者是包含数字 1 到 29 的公式或单元格引用。

  • 如果 index_num 为 1,函数 CHOOSE 返回 value1;如果为 2,函数 CHOOSE 返回 value2,以此类推。

  • 如果 index_num 小于 1 或大于列表中最后一个值的序号,函数 CHOOSE 返回错误值 #VALUE!。

  • 如果 index_num 为小数,则在使用前将被截尾取整。

Value1,value2,...   为 1 到 29 个数值参数,函数 CHOOSE 基于 index_num,从中选择一个数值或执行相应的操作。参数可以为数字、单元格引用、已定义的名称、公式、函数或文本。

3从字符串提取第一个单词

IF(ISERR(LEFT(A1,FIND(" ",A1)-1)),A1,LEFT(A1,FIND(" ",A1)-1))

4:从字符串提取最后一个单词

IF(LEN(A1) - LEN(SUBSTITUTE(A1," ","")) = 0, A1, RIGHT(A1,LEN(A1) - FIND("*",SUBSTITUTE(A1," ","*",LEN(A1) - LEN(SUBSTITUTE(A1," ",""))))))

5:提取第一个名字,第二个名字和姓

第一个名字 =LEFT(A1,FIND(" ",A1)-1)

第二个名字(可能不存在,两个字的名字):

=IF(ISERR(MID(A1,FIND(" ",A1)+1,IF(ISERR(FIND(" ",A1,FIND(" ",A1)+1)),FIND(" ",A1),FIND(" ",A1,FIND(" ",A1)+1))-FIND(" ",A1)-1)),"",MID(A1,FIND(" ",A1)+1,IF(ISERR(FIND(" ",A1,FIND(" ",A1)+1)),FIND(" ",A1),FIND(" ",A1,FIND(" ",A1)+1))-FIND(" ",A1)-1))

提取姓

=RIGHT(A1,LEN(A1)-FIND("*",SUBSTITUTE(A1," ","*",LEN(A1) - LEN(SUBSTITUTE(A1," ","")))))

6统计单元格单词的数量

= LEN(SUBSTITUTE(TRIM(A1),CHAR(32),CHAR(32)&CHAR(32)))-LEN(TRIM(A1))+1

阅读更多

没有更多推荐了,返回首页