跳转至

TEXT 函数

1. 函数概述

TEXT 函数用于将数值按指定的格式代码转换为文本。它常用于以下场景:

  • 将日期/时间按指定样式输出(如 yyyy-mm-dd
  • 将数字按千分位、小数位、百分比、货币等格式输出
  • 将格式化结果与其他文本拼接(如生成“订单号:000123”)
  • 需要“看起来像格式化后的数字”,但实际要以文本形式输出的情况

需要注意:TEXT 的返回值永远是文本,用于计算时可能需要再转回数值。


2. 基础语法

=TEXT(value, format_text)

3. 参数说明

参数 必填 类型 说明
value 数值/日期时间/可计算表达式 要被格式化的值。可以是单元格引用(如 A1)、常量(如 123.45)、或计算结果(如 A1*B1)。
format_text 文本(格式代码) 用于指定输出格式的格式代码字符串,通常需要用英文双引号包裹,例如 "0.00""yyyy-mm-dd"。也可以引用包含格式代码的单元格。

4. 基础用法示范

4.1 数字常见格式

目标效果 公式示例 说明
保留 2 位小数 =TEXT(12.3,"0.00") 不足位补 0,输出为文本 "12.30"
千分位分隔 =TEXT(1234567,"#,##0") 输出 "1,234,567"
千分位 + 2 位小数 =TEXT(1234567.8,"#,##0.00") 输出 "1,234,567.80"
百分比 =TEXT(0.256,"0.00%") 输出 "25.60%"
科学计数法 =TEXT(123456789,"0.00E+00") 输出类似 "1.23E+08"

4.2 日期与时间格式

目标效果 公式示例 说明
输出年月日 =TEXT(DATE(2026,1,14),"yyyy-mm-dd") 输出 "2026-01-14"
输出“年/月/日” =TEXT(DATE(2026,1,14),"yyyy""年""m""月""d""日""") 在格式代码中通过 """" 包裹文字常量
输出时分秒 =TEXT(TIME(9,5,3),"hh:mm:ss") 输出 "09:05:03"
输出年月 =TEXT(DATE(2026,1,14),"yyyy-mm") 输出 "2026-01"
输出英文星期 =TEXT(DATE(2026,1,14),"dddd") 输出 "Wednesday"
输出中文星期 =TEXT(DATE(2026,1,14),"aaaa") 输出 "星期三"
---

4.3 与文本拼接(常见业务写法)

目标效果 公式示例 说明
生成固定长度编号(6 位,不足补 0) ="订单号:"&TEXT(123,"000000") 输出 "订单号:000123"
金额展示(两位小数) ="金额:"&TEXT(99.9,"0.00") 输出 "金额:99.90"
日期文字说明 ="截止日期:"&TEXT(DATE(2026,1,14),"yyyy-mm-dd") 输出 "截止日期:2026-01-14"

4.4 第二参数使用 “DBNUMx”

4.4.1 DBNUMx 是什么

DBNUMx 属于一种数字显示格式,用于将数字按“中文数字/大写数字”等规则显示,它常用于需要将阿拉伯数字显示为中文数字形式的场景,例如编号、条款序号、章节序号等。

4.4.2 基本用法

目标效果 公式示例 说明
将数字按 DBNUM1 样式显示 =TEXT(123,"[DBNum1]") 输出:一百二十三 ,简体,含有亿、万等单位
将数字按 DBNUM2 样式显示 =TEXT(123,"[DBNum2]") 输出:壹佰贰拾叁 ,繁体,含有亿、万等单位

5. 总结

  • TEXT(value, format_text) 的核心价值是:用格式代码把数值转换为“指定显示形态的文本”
  • value 可以是数字、日期时间或表达式结果;format_text 必须是文本形式的格式代码(常用双引号包裹)。
  • 常见用途包括:小数位控制、千分位、百分比、日期时间格式化,以及与文本拼接生成业务字段。
  • 当需要将数字以中文数字样式输出时,可以使用 TEXT 的第二参数格式代码中的 [DBNumx](如 "[DBNum1]"),实现“阿拉伯数字 → 中文数字样式”的文本化展示。