我正在寻找一个VBA函数,该函数将以字符串形式返回当前操作系统的短日期格式(例如:M/d/yyyy
,dd-MMM-yy
,yy/MM/dd
等)。我已经在使用Application.International
的相关文章中找到了适用于MS Excel的功能,但是它们不适用于MS Access。
例如,如果要显示“ 08-11-11”,我希望能够在表单中显示操作系统日期格式,以避免混淆。使用CDate()
,我的日期会自动格式化为Windows日期和时间设置中设置的日期。但是,用户可能不知道这一点。
答案 0 :(得分:3)
只需将其从注册表中拉出即可。
我使用的方法有很多:
CreateObject("WScript.Shell").RegRead("HKCU\Control Panel\International\sShortDate")
当然,也可以使用WinAPI读取注册表。
如果确实不希望读取注册表,则可以始终设置一个不同的日期,例如:
Format(#2/1/3333#, "Short Date")
然后解析结果以获取格式