Excel 365 将数值转换为文本示例

发表于 讨论求助 2020-03-08 08:02:04

电脑论坛

TEXT 函数将数值转换为文本,并使您可以使用特殊格式字符串指定显示格式。要以可读性更高的格式显示数字,或要将数字与文本或符号合并时,此函数非常有用。其语法是TEXT(value, format_text)。可结合14中的代码符号使用。例如,假设单元格 A1 中包含数字 23.5。 要将此数字的 格式设置为美元金额,您可以使用下列公式:=TEXT(A1,"$0.00"),在本例中,Excel 会显示 $23.50。 
另外可利用Text函数转换为商业发票中的大写字母金额,如下例:其中
的表达式为: 
=TEXT(SUM($E$5:$E$9)*100,"[dbnum2]0 拾 0 万 0 仟 0 佰 0 拾 0 元 0 角 0 分")

使用文本提取函数进行数字分列,这里模拟一张商业发票的样张,其中E列为购买各图书的实际金额,在F列~M列则是利用公式来实现金额数值分列的效果,如下图所示。

本例子假设了8位数值的填充,如果填充的总长度增加,则需要修改,同时,由于通常的金额都是保留到“分位”,因此图中已经对E列的价值金额使用了ROUND函数来进行四舍五入处理。 
按照金额分列的要求,无数字的单元格必须为空白,因此在此金额不足8位时,必须前置“空格”来部位,则F5~M5单元格公式 
=MID(REPT(" ",8-LEN($E5*100)*($E5<>""))&$E5*100,COLUMN(A5),1) 
在公式中主要利用REPT函数来生成补位的空格,再与E5*100的结果组成新的字符串,最后利用MID函数结合COLUMN函数来逐位取出数字进行填写。 
同时,考虑到如果图书价值为空时,公式会显示0值结果,因此公式特地添加了兼容处理*($E5=""),即当E5为空时LEN($E5*100)*($E5<>"")结果为0,则REPT函数将产生8个空格来进行填充结果。 
另外,在填发票时,往往还会要求添加人民币符号“¥”,如F10~M10所示的效果,则公式还可以写为 
=LEFT(RIGHT(" ¥"&$E10*100,9-COLUMN(A10))) 
这个公式使用了RIGHT函数的特点,当公式向右复制时,随着COLUMN函数返回值得增加,RIGHT函数取得的字符将逐渐减少,再使用LEFT函数来取得左边字符实现数据的分列。 
假设以K10的公式为例,公式横向复制后变为 
=LEFT(RIGHT(" ¥"&$E10*100,9-COLUMN(F10))) 
RIGHT函数生成结果随公式横向复制都保持不变,文本为" ¥451315",但主要是9-COLUMN(F10)公式横向复制后发生变化为RIGHT(" ¥451315",9-6),即取得右侧3个字符“315”,最后利用LEFT函数取得左侧首字符“3”。 
说明一下,RIGHT函数中的字符串“¥”前面多加入一个“半个空号”,目的在于将未涉及金额的部分置为空白。
 

发表
26906人 签到看排名