我正在打印Access 2007报表中事件的菜单卡,希望事件日期位于打印输出的底部,格式如下:2013年12月2日(或2013年12月25日)
有没有一种方法可以格式化access数据库中的日期字段,使其以这种方式打印出来?
最佳答案
不幸的是,vbaFormat
函数没有提供您想要的功能。但是,可以使用自定义vba函数格式化事件日期的日部分,并添加已格式化的月份和年份。
DayString([event date]) & " " & Format([event date], "mmmm, yyyy")
将此函数保存在标准模块中。
Public Function DayString(ByVal pDate As Date) As String
Dim intDay As Integer
Dim strReturn As String
intDay = Day(pDate)
Select Case intDay
Case 1, 21, 31
strReturn = intDay & "st"
Case 2, 22
strReturn = intDay & "nd"
Case 3, 23
strReturn = intDay & "rd"
Case Else
strReturn = intDay & "th"
End Select
DayString = strReturn
End Function