当OS文化设置为UK时,Excel vba将日期转换为不同的格式

时间:2018-06-07 08:12:06

标签: excel vba excel-vba date-formatting cultureinfo

在Excel VBA中,我将硬编码日期分配给命名范围,如下所示:

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

这是在按钮Click上触发的。现在我将我的系统文化视为英国。当我单击按钮时,单元格上填充的值为" 12/11/208"。如果我将文化改为美国,那么它将被填充为" 11/12/2018"。

由于我的申请是在美国和英国之间使用的,我想知道有没有一种方法可以在不格式化的情况下为日期分配日期。

1 个答案:

答案 0 :(得分:4)

我建议使用一种不可思议的数据格式(“yyyy-mm-dd”),如

"2018-12-11"

你能否尝试:

Option Explicit

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