TEXT函数可以将数值显示为指定的数字格式。
TEXT函数可以将数值显示为指定的数字格式。
什么情况下使用TEXT函数?
TEXT函数根据指定的数值格式将数字转换成文本,它能够:
将数值转换成指定格式的文本
控制数字在字符串中的格式
在字符串中包含日期和时间
查找数据并显示为指定格式的文本
从另一个工作表中获取数据
根据列位置计算日期
TEXT函数语法
TEXT函数有两个参数,其语法如下:
TEXT(value,format_text)
value: 可以是数值、能够返回数值的公式,或者对数值单元格的引用。
format_text: 格式字符串。数值格式的设置可以参考《Excel揭秘2:自定义数字格式原理与应用》。
TEXT函数陷阱
使用TEXT函数可以将数值按指定格式格式化为文本,但并不是所有的格式字符串都有效,例如,使用公式=TEXT(K5,”[蓝色]G/通用格式”)来设置单元格K5中的数值为蓝色,但不会有任何效果。
示例1: 将数值转换成指定格式的文本
在单元格C1中的公式为:
=TEXT(A1,”#,###,,”)& “百万“
TEXT函数使用指定的数值格式将单元格A1中的值以百万为单位显示。
示例2: 控制数字在字符串中的格式
本示例在字符串中包含以指定格式显示的销售金额,公式为:
=”前3个月的平均销售额:” & TEXT(AVERAGE(B2:B4),”¥#0.00″)
如果在字符串中直接链接到包含金额的单元格,将不会显示前面的“¥”号。
示例3: 在字符串中包含日期和时间
本示例在字符串中以年月日和时间的格式显示当前日期和时间,公式为:
=”本次更新的时间:” & TEXT(NOW(),”yyyy-m-dh:mm AM/PM”)
示例4: 查找数据并显示为指定格式的文本
如下图所示的工作表,在单元格A2中输入门店名称,单元格B2中将以前面带人民币符号、千位分隔符且保留两位小数的格式显示该门店的销售额,公式为:
=TEXT(VLOOKUP(A2,A5:B10,2),”¥#,##0.00″)
TEXT函数应用指定的格式将VLOOKUP函数查找的结果转换成文本。
示例5: 从另一个工作表中获取数据
如下图所示,在工作表Sample5的单元格B2中,要获取具有与单元格A2中的值相同名称的工作表“2017-8-18”的单元格B2中的值,如果直接使用公式:
=INDIRECT(“‘”& A2 & “‘!B2”)
会返回错误#REF,因为A2中的日期会转换成日期序列数,这样就不会与工作表名相匹配。此时,使用TEXT函数将单元格A2中的日期转换成文本,以创建正确的工作表引用,从而正常地获取数据。公式为:
=INDIRECT(“‘”& TEXT(A2,”yyyy-m-d”) & “‘!B2”)
示例6: 根据列位置计算日期
有时候,给定起始日期后,要计算其后的一系列日期。在本例中,给定接近2017年8月的星期一的日期,如单元格B2中的“2017-7-31”,要求得到8月每周工作日的日期区间,例如第1周为“7/31-8/4”。在单元格B8的中公式为:
=TEXT(StartDate+7*(COLUMN()-COLUMN(StartDate)),”m/d”)& “-” & TEXT(StartDate+7*(COLUMN()-COLUMN(StartDate))+4,”m/d”)
将单元格B2命名为“StartDate”,加上使用COLUMN函数计算的列数获得的日期间隔得到日期,最后使用TEXT函数将日期格式化。将单元格B8向右拉至单元格F8,结果如下图所示。