Excel中Text 函数将数值转换为按指定数字格式表示的文本。
语法:TEXT(value,format_text)
Value 为数值、计算结果为数字值的公式,或对包含数字值的单元格的引用。
Format_text 为单元格格式对话框中数字选项卡上分类框中的文本形式的数字格式。
说明:
Format_text 不能包含星号 (*)。通过格式菜单调用单元格命令,然后在数字选项卡上设置单元格的格式,只会更改单元格的格式而不会影响其中的数值。
使用函数 TEXT 可以将数值转换为带格式的文本,而其结果将不再作为数字参与计算.
字符说明
(:) 时间分隔符。在一些国别,可能用其他符号来当时间分隔符。格式化时间值时,时间分隔符可以分隔时、分、秒。时间分隔符的真正字符在格式输出时取决于系统的设置。
(/) 日期分隔符。在一些国别,可能用其他符号来当日期分隔符。格式化日期数值时,日期分隔符可以分隔年、月、日。日期分隔符的真正字符在格式输出时取决于系统设置。
d 以没有前导零的数字来显示日 (1 – 31)。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)dd 以有前导零的数字来显示日 (01 – 31)。
ddd 以简写来表示日 (Sun –Sat)。
dddd 以全称来表示日 (Sunday –Saturday)。
m 以没有前导零的数字来显示月 (1 – 12)。如果 m 是直接跟在 h 或 hh 之后,那么显示的将是分而不是月。
mm 以有前导零的数字来显示月 (01 – 12)。如果m是直接跟在h或hh之后,那么显示的将是分而不是月。
mmm 以简写来表示月 (Jan –Dec)。
mmmm 以全称来表示月 (January –December)。
y 或 yy 以两位数来表示年 (00 – 99)。
yyy或yyyy 以四位数来表示年 (0000 – 9999)。
H 以没有前导零的数字来显示小时 (0 – 23)。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)Hh 以有前导零的数字来显示小时 (00– 23)。
M 以没有前导零的数字来显示分 (0 – 59) 需跟在 h 或 hh 之后。
Mm 以有前导零的数字来显示分 (00 – 59) 需跟在 h 或 hh 之后。
S 以没有前导零的数字来显示秒 (0 – 59) 需跟在 h 或 hh 之后。
Ss 以有前导零的数字来显示秒 (00 – 59) 需跟在 h 或 hh 之后。
AM/PM 在中午前以 12 小时配合大写 AM 符号来使用;在中午和 11:59 P.M.间以 12 小时配合大写 PM 来使用。
am/pm 在中午前以 12 小时配合小写 am 符号来使用;在中午和 11:59 P.M.间以 12 小时配合小写 pm 来使用。
A/P 在中午前以 12 小时配合大写A符号来使用;在中午和 11:59 P.M.间以12 小时配合大写P来使用。
a/p 在中午前以 12 小时配合小写a符号来使用;在中午和 11:59 P.M.间以 12 小时配合小写p来使用。
下面表格标识了一些可用来创建用户自定义数值格式的字符:
(0) 数字占位符。显示一位数字或是零。如果表达式在格式字符串中 0 的位置上有一位数字存在,那么就显示出来;否则,就以零显示。如果数值的位数少于格式表达式中零的位数(无论是小数点的左方或右方),那么就把前面或后面的零补足。
如果数值的小数点右方位数多于格式表达式中小数点右面零的位数,那么就四舍五入到有零的位数的最后一位。如果数值的小数点左方位数多于格式表达式中小数点左面零的位数,那么多出的部分都要不加修饰地显示出来。
(#) 数字占位符。显示一位数字或什么都不显示。如果表达式在格式字符串中#的位置上有数字存在,那么就显示出来;否则,该位置就什么都不显示。
此符号的工作原理和0数字占位符大致相同,不同之处只有在当表达式中数值的位数少于#的位数(无论是小数点左方或右方)时,不会把前面或后面的零显示出来。
(.) 小数点占位符。在一些国别是用逗号来当小数点的。小数点占位符用来决定在小数点左右可显示多少位数。如果格式表达式在此符号左边只有正负号,那么小于 1 的数字将以小数点为开头。如想在小数前有0的话,那么请在小数点占位符前加上0这个数字占位符。小数点占位符的实际字符在格式输出时要看系统的数字格式而定。
(%) 百分比符号占位符。表达式乘以 100。而百分比字符 (%) 会插入到格式字符串中出现的位置上。
(,) 千分位符号占位符。在一些国别,是用句点来当千位符号。千位符号主要是把数值小数点左边超过四位数以上分出千位。如果格式中在数字占位符(0 或 #)周围包含有千分位符号,则指定的是标准的千分位符号使用法。两个邻近的千分位符号或一个千分位符号紧接在小数点左边(不管小数位是否指定),其意思为将数值除以 1000,按需要四舍五入。
例如,可以用格式字符串 "##0,," 将 1 亿表示成 100。数值小于 1 百万的话表示成0,两个邻近的千分位符号除了紧接在小数点左边以外,在任何位置出现时均简单地视为指定了使用千分位符号。小数点占位符的真正字符在格式输出时,需视系统识别的数字格式而定。
(E- E+ e- e+) 科学格式。如果格式表达式在 E-、E+、e- 或 e+ 的右方含有至少一个数字占位符(0 或 #),那么数值将表示成科学格式,而 E 或 e 会被安置在数字和指数之间。
E 或 e 右方数字占位符的个数取决于指数位数。使用 E- 或 e- 时,会用减号来表示负的乘幂。使用 E+ 或 e+ 时,会用减号来表示负的乘幂并用加号来表示正的乘幂。
- + $ ( ) 显示一个原义字符。如想显示那些列出的字符之外的字符时,可以用反斜杠 ( ) 字符作前缀或以双引号 (" ") 括起来。
() 将格式字符串中下一个字符显示出来。如想显示一作为原义字符并有特殊含义的字符,可将此字符置于反斜杠 () 之后。反斜杠本身并不会显示出来。而使用反斜杠 () 的效果和使用双引号是一样的。如想显示反斜杠字符,可使用两个反斜杠 ()。
那些不能显示为原义字符的字符是日期格式字符和时间格式字符(a, d, h, m, s, y, / 和 :)、数值格式字符(#, 0, %, E, e, 逗点和句点)和字符串格式字符(@, &,和 !)。
可以用下面任意字符来创建格式表达式用于字符串:
@ 字符占位符。显示字符或是空白。如果字符串在格式字符串中 @的位置有字符存在,那么就显示出来;否则,就在那个位置上显示空白。除非有惊叹号字符 (!) 在格式字符串中,否则字符占位符将由右而左被填充。
& 字符占位符。显示字符或什么都不显示。如果字符串在格式字符串中和号 (&) 的位置有字符存在,那么就显示出来;否则,就什么都不显示。除非有惊叹号字符 (!) 在格式字符串中,否则字符占位符将由右而左被填充。
! 强制由左而右填充字符占位符。缺省值是由右而左填充字符占位符。
用户自定义日期 /时间格式示例
下面表格是以用户自定义日期/时间格式来显示 December 7, 1998 的示例:
格式 显示结果
m/d/yy 12/7/98
d-mmm 7-Dec
d-mmmm-yy 7-Dec-98
d mmmm 7-Dec
mmmm yy Dec-98
hh:mm AM/PM 8:50 PM
h:mm:ss a/p 8:50:35 PM
h:mm 20:50
h:mm:ss 20:50:35
m/d/yy h:mm 12/7/98 20:50
下面的表格包含一些数值格式表达式的示例。(这些示例皆假设系统之国别设置为 English-U.S.)第一列包含格式字符串,其他列则为输出结果,假设格式化数据有列表头中给定的值。
Text(格式) 正5 负5 0.5
0 5 -5 1
0.00 5.00 -5.00 0.50
#,##0 5 -5 1
#,##0.00; Nil 5.00 Nil 0.50
$#,##0;($#,##0) $5 ($5) $1
$#,##0.00;($#,##0.00) $5.00 ($5.00) $0.50
0% 500.00% -500.00% 50.00%
0.00% 500.00% -500.00% 50.00%
0.00E+00 5.00E+00 -5.00E+00 5.00E-01