Excel vba конвертирует дату в другой формат, когда для ОС установлена ​​культура Великобритании - PullRequest
0 голосов
/ 07 июня 2018

В Excel VBA я назначаю жестко закодированную дату для именованного диапазона, как показано ниже:

 Worksheets("Main").Range("Effectivedate").Value ="11/12/2018"

Это срабатывает при нажатии кнопки.Теперь у меня есть системная культура в Великобритании.Когда я нажимаю кнопку, значение, указанное в ячейке, равно «12/11/2018».Если я изменю культуру на США, она будет заполнена как «12/12/2018».

Поскольку мое приложение используется между странами США и Великобритании, я хотел бы знать, есть ли способ назначить датукак таковая ячейка без форматирования.

1 Ответ

0 голосов
/ 07 июня 2018

Я бы предложил использовать единый формат данных ("гггг-мм-дд"), например

"2018-12-11"

Можете ли вы иначе попробовать:

Option Explicit

Sub test()
    With Worksheets("Main").Range("Effectivedate")
        .Value = 43445
        .NumberFormat = "dd/mm/yyyy"
    End With
End Sub
...