Ms access 带VBA的日期格式-英语与法语差异

Ms access 带VBA的日期格式-英语与法语差异,ms-access,datetime,vba,datepicker,Ms Access,Datetime,Vba,Datepicker,我对Access 2010有问题。我正在使用包含的日期选择器和默认的文本框 在我工作的地方,有美国日期格式(mm/dd/yyyy)的计算机,还有加拿大日期格式(dd/mm/yyyy)的计算机 我无法更改这些计算机的区域选项 我已成功使用格式强制输入日期(日期,“dd/mm/yyyy”) 但当我选择了一个带有默认日期选择器的日期时,它将与windows区域选项一起使用,在本例中为(mm/dd/yyyy),但在其他计算机中,它将是ok的,在(dd/mm/yyyy)中。我需要用日期选择器覆盖日期格式,

我对Access 2010有问题。我正在使用包含的日期选择器和默认的文本框

在我工作的地方,有美国日期格式(mm/dd/yyyy)的计算机,还有加拿大日期格式(dd/mm/yyyy)的计算机

我无法更改这些计算机的区域选项

我已成功使用
格式强制输入日期(日期,“dd/mm/yyyy”)

但当我选择了一个带有默认日期选择器的日期时,它将与windows区域选项一起使用,在本例中为(mm/dd/yyyy),但在其他计算机中,它将是ok的,在(dd/mm/yyyy)中。我需要用日期选择器覆盖日期格式,但我不知道如何

这是一个屏幕截图,日期格式是美国格式,它不好


我相信有一种更优雅的方法可以做到这一点,但我想您可以通过以下方式检测区域设置确定的日期格式:

If CInt(Left(CStr(DateSerial(2012, 1, 2)), 2)) = 2 Then
    MsgBox "Canadian locale, date format dd/mm/yyyy."
Else
    MsgBox "US locale, date format mm/dd/yyyy."
End If

然后基于此,解释日期选择器选择的日期,并以您选择的格式重新显示它

您能否将文本字段的Format属性设置为dd/mm/yy或您需要的任何格式?

好的,我们在美英选择器上有一个法语按钮,大概是mm/dd/yyyy格式。你得问问自己,你在这里想要实现什么。。。不要混用语言环境,也不要与之对抗,尤其是mm/dd和dd/mm,因为这在大多数情况下都是错误的。我是英国人,我的电脑是为英语而设的,我不想和mm/dd/yyyy有任何关系,我想我的殖民地同事也有类似的感受。那你为什么要强迫我把日期当作日期而不是字符串来处理呢?我住在加拿大魁北克,在那里我们工作时都说法语。有时只有windows是用英语设置的。但是所有的用户都是用法语工作的,他们中的一些人年纪大了,对格式日期的变化感到困惑,这会导致错误。而且法语按钮从一开始就在那里。正确设置电脑要比尝试你正在做的事情容易得多,每次你嗅到这些东西都会出错。