Format 函数

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗?请在此处查看本文的英文版本以便参考。

返回一个Variant (字符串) 包含表达式根据格式表达式中所包含的指令设置格式。

请参阅一些示例

语法

格式 ( 表达式[、 格式] [firstdayofweek ] [firstweekofyear ] )

格式函数语法具有以下参数:

参数

说明

expression

必填。任何有效的表达式。

格式

可选。有效命名的或用户定义的格式表达式。

firstdayofweek

可选。指定一周的第一天常量 。

firstweekofyear

可选。指定一年的第一周的常数。


设置

格式参数可以使用不同的设置,具体取决于表达式参数的数据类型。请参阅有关有效格式表达式的详细信息下表中列出的文章。

表达式中使用此数据类型...

请参阅文章

任何类型

Format 属性

日期/时间

Format 属性 - 日期/时间数据类型

数字

Format 属性 - 数字和货币数据类型

文本和备注

Format 属性 - 文本和备注数据类型

Yes/No

Format 属性 - Yes/No 数据类型


Firstdayofweek参数具有这些设置:

常量

说明

vbUseSystem

0

使用 NLS API 设置。

VbSunday

1

星期日 (默认)

星期几

2

星期一

vbTuesday

3

星期二

vbWednesday

4

星期三

vbThursday

5

星期四

vbFriday

6

星期五

vbSaturday

7

星期六


Firstweekofyear参数具有这些设置:

常量

说明

vbUseSystem

0

使用 NLS API 设置。

vbFirstJan1

1

启动与 1 月 1 日所在的周 (默认值)。

vbFirstFourDays

2

至少包含四个天一年中的第一周的开始。

vbFirstFullWeek

3

以一年中的第一个全周开始。


注解

设置格式

执行此操作

数字

使用预定义已命名的数字格式或创建用户定义的数字格式。

日期和时间

使用预定义名为日期/时间格式或创建用户定义的日期/时间格式。

日期和时间的序列号

使用日期和时间格式或数字格式。

字符串

创建您自己的用户定义的字符串格式。


如果您尝试在不指定格式将数字设置格式,格式提供了类似于Str函数的功能,尽管国际。然而,格式设置为使用格式字符串的正数不包含前导空格为符号保留的值;使用Str转换保留前导空格。

如果您要设置格式的非本地化数字字符串,您应使用用户定义的数字格式以确保您得到所需的外观。

注意: 如果日历属性设置为公历并且格式指定日期格式,提供的表达式必须是公历。如果 Visual Basic日历属性设置为回历,提供的表达式必须是回历。

如果日历为公历,则格式表达式符号的含义不变。如果日历为回历,所有日期格式符号 (例如,dddd,mmmm,yyyy) 具有相同的含义,但适用于回历。格式符号仍将保留在英语;导致 (例如,AM 和 PM) 的文本显示的符号显示与该符号关联的字符串 (英语或阿拉伯语)。日历为回历的某些区域符号会改变。

符号

范围

d

1-30

dd

1-30

ww

1 51

mmm

显示完整的月份名称 (回历月份名称有没有缩写)。

y

1-355

yyyy

100-9666

示例

使用表达式中的格式函数   您可以使用表达式的任意位置,您可以使用格式。例如,您可以使用它在查询字段别名,并且的一部分或文本框窗体或报表上的控件来源属性下面的示例显示一个表达式可能使用中的报表筛选器属性来限制仅输出上周记录。

格式 ([Date],"ww") = Format ("ww"现在 ())-1

在此示例中,报表的记录源具有名为日期,其中包含每个特定记录的修改,并在报表上使用该日期的字段。运行报表时,其结果进行筛选以仅显示这些记录位置 (Format([Date],"ww")) 等于上一周 (Format(Now(),"ww")-1) 日期域中值一周。

使用 VBA 代码中的格式函数   

注意: 下面的示例说明使用此函数在 Visual Basic for Applications (VBA) 模块。有关处理 VBA 的详细信息,搜索旁边的下拉列表中选择开发人员参考,然后在搜索框中输入一个或多个术语。

此示例使用命名的格式和用户定义的格式显示Format函数的值设置格式的各种用法。对于日期分隔符 (/) 时间分隔符 (:) 和 AM / PM 文字的实际格式显示输出系统取决于代码运行的计算机的区域设置。当时间和日期的显示开发环境中,使用短时间格式和短日期格式代码区域设置。当显示通过运行代码,短时间格式和系统区域设置的短日期格式使用,可能不同于代码区域设置。对于此示例中,则假定美国英语区域设置。

使用当前系统短时间设置以及短日期设置的开发环境中显示MyTimeMyDate

Dim MyTime, MyDate, MyStr
MyTime = #17:04:23#
MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format.
MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format.
MyStr = Format(Date, "Long Date")
MyStr = Format(MyTime, "h:m:s") ' Returns "17:4:23".
MyStr = Format(MyTime, "hh:mm:ss AMPM") ' Returns "05:04:23 PM".
MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Returns "Wednesday,
' Jan 27 1993".
' If format is not supplied, a string is returned.
MyStr = Format(23) ' Returns "23".
' User-defined formats.
MyStr = Format(5459.4, "##,##0.00") ' Returns "5,459.40".
MyStr = Format(334.9, "###0.00") ' Returns "334.90".
MyStr = Format(5, "0.00%") ' Returns "500.00%".
MyStr = Format("HELLO", "<") ' Returns "hello".
MyStr = Format("This is it", ">") ' Returns "THIS IS IT".


使用零长度字符串的格式

在 Microsoft Access 版本 2.0 和更早版本,您可以使用Format函数返回一个值零长度字符串和另一个值。例如,您与Format函数使用如下所示的格式表达式从代码返回适当的字符串值:

Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")

在 Microsoft Access 97 和更高版本中,您必须单独测试的情况下,然后返回相应的值根据结果。例如,您可以使用Format函数,例如以下表达式中使用IIf函数:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

此更改仅当您使用Format函数格式化适用依赖于它是否为零长度字符串或 Null 值的字符串。Format函数用于其他格式表达式继续像以前版本中那样工作。

如果转换数据库从 Microsoft Access 版本 2.0 和更早版本到 Microsoft Access 2002 或更高版本,您必须更改代码以测试分别为 Null 事例。

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×