大家好,我们要和大家介绍的是文本函数在Excel中的使用高阶扩展方法,上篇文章我们说了非常基础的用法,现在来说说这个函数的一些其他使用方法。
我们计划使用八分阶段来说明这个,分为:
一、在TEXT函数的条件格式中使用变量:
二、与IF函数比较
三、TEXT函数的第一个参数研究
四、错误处理:
五、TEXT函数带"0"、"."和"!"的解释:
六、TEXT函数的参数中带“-”的解释:
七、关于INDIRECT+TEXT(数字,"r0C00")此类格式的应用
八、TEXT函数嵌套
下面一起来看看这些使用的技巧吧!让你在工作中能够加快工作效率不在话下!
在TEXT函数的条件格式中使用变量:
TEXT函数的条件格式公式样式:text(数据源,"[条件1]显示格式;[条件2]显示格式;否则显示格式;文本显示格式")
当然我们的条件格式可以全部或者部分使用变量来设置,其中当有部分使用变量时,条件和显示格式的任何部分都可以使用变量,包括条件格式中的运算符号等等。需要注意的是当使用变量时,不使用变量的部分用引号("")引起来,然后用&符号与使用变量的部分连接起来,运算后形成条件格式的样式。
PS:变量可以是单元格引用,公式(包括数组公式)、函数结果。根据需要,条件格式的每个部分或者全部可以省略不使用。
举个例子,说明一下这几个使用方法的表现形式:
在条件代码中使用变量:
在本例使用的条件格式为:=TEXT(B13,"[>"&0.5&"]随机数>!0!.5;[<"&0.3&"]随机数<!0!.3;随机数在!0!.3~!0!.5之间"),这个就是我们在公式中间的条件代码(B3单元格)使用变量的简单形式。
在格式代码中使用变量
本例的使用函数公式为:=TEXT(B17,"[>0.5]"&D17&";[<0.3]"&E17&";"&F17),格式代码中间的变量就是我们的D17单元格;需要说明的是可以在条件部分和格式部分同时使用变量,这个函数也是支持使用的,此处不一一进行举例,有兴趣的小伙伴可以根据上面的公式自己进行组合运算测试。
条件格式中使用函数公式
例1的函数公式为:=SUBSTITUTE(TEXT(A27,REPT("0] ",9)),"]","0¥")
例2的函数公式为:= =TEXT(SUM(MID(SUBSTITUTE(A32,"*",REPT(" ",14)),{1,9,29,43},15)*10^{12,8,4,0}),REPT("0000\*",3)&"0000")
例3的函数公式为:= =MID(SUBSTITUTE(TEXT(A37,REPT("!,00",ROUNDUP(LEN(A37)/2,0))),",0",","),2,100)
以上公式只是演示在条件格式中使用变量的方法,大家可以根据该方法灵活运用,解决实际问题。还有很多其他的使用方法,就不在介绍了。
与IF函数比较
text的一般格式"正数;负数;零;文本"对于处理数据来说,最多可以有四段,但第四部分是数据源是非数据时的显示值,如下所示:
=TEXT(J44,"正;负;零;非数值");=TEXT(B19-5,"[<=12];非月份数据")
也就是说我们加[]判断的条件格式也最多只能满足四个判断条件,具体的细节部分与IF函数对比说明如下:
当有一个的时候,如:text(A1,"[>条件1]显示1"),相当于IF(A1>条件1,显示1,A1);
=TEXT(B19+B17+B14+B13+C17+8,"[>20]你好")
=IF(B19+B17+B14+B13+C17+8>20,"你好",B19+B17+B14+B13+C17+8)
当有两个时,如:text(A1,"[>条件1]显示1;显示2")相当于IF(A1>条件1,显示1,显示2);
=TEXT(B19+B17+B14+B13+C17+8,"[>20]你好;大家好")
=IF(B19+B17+B14+B13+C17+8>20,"你好","大家好")
需要注意的是text(A1,"[>条件1]显示1;")相当于IF(A1>条件1,显示1,"");
当有三个时,如:text(A1,"[>条件1]显示1;[>条件2]显示2;显示3)相当于IF(A1>条件1,显示1,IF(A1>条件2,显示2,显示3))
=TEXT(B19+B17+B14+B13+C17+8,"[>20]你好;[>15]大家好;")
=IF(B19+B17+B14+B13+C17+8>20,"你好",IF(B19+B17+B14+B13+C17+8>15,"大家好",""))
=TEXT(B19+B17+B14+B13+C17+8,"[>20]你好;[>15]大家好;欢迎你")
=IF(B19+B17+B14+B13+C17+8>20,"你好",IF(B19+B17+B14+B13+C17+8>15,"大家好","欢迎你"))
PS:text(A1,"[>条件1]显示1;[>条件2]显示2;显示3)相当于IF(A1>条件1,显示1,IF(A1>条件2,显示2,显示3))
当有四个时,如:text(A1,"[>条件1]显示1;[>条件2]显示2;显示3;显示4)相当于IF(ISTEXT(A1),"显示4",IF(A1>条件1,显示1,IF(A1>条件2,显示2,显示3)))
=TEXT(B19,"[>10]优;[<5]不合格;合格;非法数值")
=IF(ISTEXT(B19),"非法数值",IF(B19>10,"优",IF(B19<5,"不合格","合格")))
PS:text(A1,"[>条件1]显示1;[>条件2]显示2;显示3;)相当于IF(ISTEXT(A1),"",IF(A1>条件1,显示1,IF(A1>条件2,显示2,显示3)))
TEXT函数的第一个参数研究
函数公式为:{=MIN(TEXT(B61:B66,"m")*1)&"月"}
函数公式为:=TEXT(CHAR(COLUMN()+64),"\!@:@")
函数公式为:{=VLOOKUP(SUBSTITUTE(A76,0,"A"),TEXT({1,-1},SUBSTITUTE(E71:E73,0,"A")&";"&A71:A73),2,FALSE)}
函数公式为:=TEXT({10,1,11,2,13,9,4,8,7,3},"[>=10]优;[<5]不及格;及格")
错误处理:
TEXT函数只能简单处理错误值,对于出错的引用单元格本身不能在进行引用计算。
使用的套路为'=TEXT(--ISERROR(A1),"[=1]显示值1;显示值2")或者=TEXT(--ISERROR(A1),"[=0]显示值1;显示值2");显示值里不能包含A1,否则A1为错误值时仍然出现错误值。这个比较简单,直接看看如下截图即可;
TEXT函数带"0"、"."和"!"的解释:
TEXT函数的参数中带“-”的解释:
稍微解释一下:第一个参数的“-”作为运算符负号使用;如果第二个参数中[=第一参数]的条件出现,则第二个参数的“-”作为运算符负号使用;如果第二个参数中[=第一参数]的条件没有出现,则作为字符符号使用并且如果且TEXT的条件只有一部分时,显示原值,有两部分以上时,则多显示一个运算符负号“-”。
TEXT函数的参数带两个"-"号的解释,见以下语句:
TEXT函数的两个参数带两个以上"-"号连用,见以下语句:
条件格式是区间,第一参数为负数
关于INDIRECT+TEXT(数字,"r0C00")此类格式的应用
解释:TEXT(102,"r0c00") 函数的计算结果为"r1c02",前面再加个indirect函数,相当于INDIRECT("r1c02",),计算结果就是等于1行2列即B1的值。这个的使用方法,稍微做一些了解即可。
TEXT函数嵌套
格式如:=TEXT(TEXT(TEXT(TEXT(A1,"[>=90]优秀;[>=80]良好;0"),"[>=70]中等;[>=60]及格;0"),"[>=50]不及格;[>=40]差;0"),"[>=30]很差;[>=20]特别差;0")。一般是把前每个TEXT的前2个判定条件满足后,第三个设定为显示原值,然后再进行嵌套。例如=TEXT(TEXT(D4-60,"[>=30]优秀;不及格;0"),"[>=10]良好;及格") 这里假设分数全都是整数,没有小数,如下解释:
以上就是我们今天和大家说用Excel中间有关自定义函数TEXT扩展使用方法,如果有不明白的或者不懂的可以在下方留言,我们会一一解答的。欢迎下方留言,转发,谢谢!或者需要源文件的,可以单独找我要。
我是Excel教案,关注我持续分享更多的Excel技巧!
热门跟贴