如何将now()转换为“2013年11月21日”之类的东西?我已经研究过像datepart和format这样的东西,但是我找不到这个翻译。立即转换为MS Access VBA中的特定格式
2
A
回答
1
这是你正在尝试?
Sub Sample()
Debug.Print ConvertTodate(#12/13/2012#)
Debug.Print ConvertTodate(#12/12/2012#)
Debug.Print ConvertTodate(#12/14/2012#)
Debug.Print ConvertTodate(#12/23/2012#)
Debug.Print ConvertTodate(Now)
End Sub
Function ConvertTodate(d As Date) As String
Dim suff As String
Dim dt As String
dt = Format(d, "mmmm dd, yyyy")
Select Case Day(d)
Case 0 To 10, 20 To 31
Select Case Right(Day(d), 1)
Case 1: suff = "st,"
Case 2: suff = "nd,"
Case 3: suff = "rd,"
Case 0, 4 To 9: suff = "th,"
End Select
Case 11 To 20: suff = "th,"
End Select
ConvertTodate = Replace(dt, Day(d) & ",", Day(d) & suff)
End Function
注意:根据您的区域设置,您可能需要使用的东西,而不是逗号别的。
1
这应该有效。我在VBA立即窗口中运行了这个。
?Format(Now(),"mmmm dd, yyyy")
November 21, 2013
+1
我也有,但不能得到“st”和“nd”和“rd”和“th”s出现 – MyNameIsKhan
相关问题
- 1. MS Access VBA格式Excel
- 2. 将MySQL转换为MS Access
- 3. MS Access 2013文件可以转换为MS Access 2016使用的格式吗?
- 4. MS Access转换
- 5. 将MS Access中的VBA代码转换为SQL服务器
- 6. 使用Excel VBA将CSV转换为MS Access数据库中的表格
- 7. 将Ms sqlserver查询转换为Ms Access?
- 8. ms-access:为列指定格式
- 9. 如何将.csv转换为.mdb(MS Access)格式
- 10. 的MS Access VBA
- 11. MS Access - 在表单中更改值后立即写入表格
- 12. MS Access VBA中的正则表达式?
- 13. 如何防止MS Access VBA将对象转换为字符串?
- 14. 将MS Access VBA应用程序转换为.NET Visual Studio项目
- 15. 将特定格式转换为NSDate
- 16. 将日期转换为特定格式
- 17. MS ACCESS vba select
- 18. MS Access 2010 VBA
- 19. MS ACCESS vba - error
- 20. 在VBA Access中转换
- 21. 将TSQL转换为MS-Access SQL
- 22. MS Access VBA格式Excel Sheet列作为货币
- 23. MS Access:立即更新相关子表格
- 24. MS Access 2016 VBA - 通过VBA以表格形式修改TextBox
- 25. OpenOffice和MS Office格式转换为TIFF
- 26. MS-Office文档转换为.PDF格式
- 27. 将SQL查询转换为MS Access SQL
- 28. 转换MS Access 2000至2010
- 29. MS Access:突出显示MS Access报告中的特定字段
- 30. MS Access将.csv转换为.xls
'不错@SiddharthRout :-)脑力运转这似乎给出了很好的结果,但我必须从字面上理解为什么它是错误的:-) - Jean-FrançoisCorbett 3分钟前@@ Jean-FrançoisCorbett:对不起,当这篇文章被删除时,不得不移动评论。相信我,你不会想知道当我意识到我以前的代码失败时我感到多么尴尬或#2012年12月12日#:P别无选择,只能采取答案并重新工作! –