模块
目录
索引 🔎︎

# Format 函数

将数字转换成字符串，然后根据指定的格式对其进行格式化。

## 语法:

    Format (Number [, Format As String])

## 返回值:

字符串

## 参数:

「数字」:要转换成格式化字符串的数字表达式。

「Format: 指定 Number 格式代码的字符串。如果不指定「Format」，Format 函数的功能类似于 Str」函数。

## 格式化代码

以下列表说明了可以用来格式化数字的代码:

「0: 在 Number」中，如果与格式代码中的 0 相对应的位置上有数字，则显示该数字，否则显示零。

如果「数字」表达式中小数点任意一侧的位数小于格式代码中零的个数，将显示前置零或后置零。如果 Number 中小数分隔符左侧的位数多于格式代码中零的个数，则不加修改地显示多余的位。

Number 中小数部分的取整取决于「Format」中小数分隔符后面出现的零的个数。

「#: 如果 Number」中与「Format」的 # 占位符相对应的位置上有数字，则显示该数字，否则此位置不显示任何值。

此符号的功能与 0 类似，不同的是，当格式代码中的 # 通配符位数多于 Number 中的数字位数时，不显示前置零或后置零，而只显示有关的数字。

「.」: 小数占位符用于确定小数分隔符左边和右边的位数。

如果格式代码中此符号左边仅含有 # 占位符，则纯小数将以小数分隔符作为起始字符。要使小数始终显示有前置零，请用 0 作为小数分隔符左边第一位的占位符。

「%」: 将数字乘以 100，并在格式代码中该数字出现的位置处插入百分号 (%)。

「E- E+ e- e+ 」: 如果格式代码中含有符号 E-、E+、e- 或 e+ 且符号右边至少含有一位占位符 (0 或 #)，则将数字格式化为科学计数法或指数格式，并在数字和指数之间插入字母 E 或 e，指数位数取决于符号右边占位符的位数。

如果指数为负数，则在包含 E-、E+、e- 和 e+ 的指数前显示减号。如果指数为正数，则仅在包含 E+ 或 e+ 的指数前显示加号。

如果格式代码中含有分隔符且分隔符前后有数字占位符 (0 或 #)，则会显示千位分隔符。

句点是否用作千位分隔符和小数分隔符取决于所在的地区设置。当直接在 Basic 源代码中输入数字时，始终使用句点作为小数分隔符。而实际的小数分隔符取决于系统中设置的数字格式。

「- + $ ( ) 空格」: 直接在格式代码中输入的加号 (+)、减号 (-)、美元符号 ($)、空格或括号会显示为文字字符。

要显示此处所列字符以外的字符，则必须在字符前加反斜杠 (\)，或在字符前后加引号 (" ")。

\ : 显示格式代码中反斜杠后面的字符。

要将格式代码中具有特殊含义的字符作为文字字符显示，必须在这些字符前加上反斜杠。反斜杠本身并不会显示，除非在格式代码中输入两个反斜杠 (\\)。

在格式代码中，希望显示为文字字符而必须在前面加反斜杠的字符包括日期、时间格式化字符 (a、c、d、h、m、n、p、q、s、t、w、y、/、:) 、数字格式化字符 (#、0、%、E、e、逗号、句点) 和字符串格式化字符 (@、&、<、>、!)。

您也可以使用以下预定义数字格式。除 "General Number" 之外，所有预定义格式代码返回的数字都带有两位小数。

在使用预设格式时，格式名称的前后需要加上引号。

## 预定义格式

「General Number」: 显示格式与输入格式相同的数字。

「Currency」: 在数字前插入美元符号并在负数前后加上括号。

「Fixed」: 小数分隔符前至少显示一位数字。

「Standard」: 显示数字时带有千位分隔符。

「Percent」: 将数字乘以 100，并附加百分号。

「Scientific」:以科学计数法格式显示数字 (例如，1000 显示为 1.00E+03)。

格式代码由三部组合成，各部分之间用分号分隔。三个部分依次定义正数、负数和零的格式。如果仅指定一种格式代码，则所有数字都将采用这种代码。

您可以在LibreOffice - 偏好设置工具 - 选项 - 语言设置 - 语言中设置用于控制 LibreOffice Basic 中的数字、日期及货币格式的locale. 在Basic的格式化代码中，总是使用点号 (.) 作为您的locale中定义的小数点符号的「占位符」，并且在实际使用中将会被替换为locale设置中对应的字符。

同样适用于日期、时间和货币格式的区域设置。Basic 格式的代码的解释和显示将遵循您的区域设置。

## 错误代码:

5 无效的过程调用

## 示例:

    Sub ExampleFormat
        MsgBox Format(6328.2, "##,##0.00")
        ' 在 Basic 源代码中输入数字时，总是使用英文句号作为小数分隔符。
        ' 例如，在英语区域设置下显示为「6,328.20」，在德语区域设置下显示为「6.328,20」。
    End Sub

相关主题

数字格式代码