Формат даты с VBA - английский против французского разница - PullRequest
0 голосов
/ 10 декабря 2011

У меня проблема с Access 2010. Я использую включенный указатель даты с текстовым полем по умолчанию.

Где я работаю, есть компьютеры в формате даты США (мм / дд / гггг) и другие в формате даты Канады (дд / мм / гггг)

Я не могу изменить региональную настройку этих компьютеров.

Мне удалось назначить дату с format(date,"dd/mm/yyyy")

Но когда я выбрал дату с помощью средства выбора даты по умолчанию, он идет с региональной опцией Windows, в данном случае (мм / дд / гггг), но на другом компьютере все будет в порядке, в (дд / мм / гггг) ). Мне нужно переформатировать дату с помощью средства выбора даты, но я не знаю, как.

Это скриншот, формат даты в американском формате, и он не в порядке.

Screenshot

Ответы [ 2 ]

1 голос
/ 11 декабря 2011

Разве вы не можете просто установить свойство Формат текстового поля на дд / мм / гг или что вам нужно?

1 голос
/ 11 декабря 2011

Я уверен, что есть более элегантный способ сделать это, но я думаю, вы могли бы определить формат даты, определяемый локалью, примерно так:

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

Затем, основываясь на этом, интерпретируйте выбранную датировщиком дату и повторно отобразите ее в выбранном вами формате.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...