Windows 10 上的 Excel2016 vba 格式函数产生意外的时间分隔符

Windows 10 上的 Excel2016 vba 格式函数产生意外的时间分隔符

下面的代码用于提供所请求的时间分隔符,但现在 Windows 10 上的 Excel2016 产生了错误的结果。

Public Sub TestDateFormat()
    Dim s As String
    Dim d As Date

    d = Now()
    s = Format(d, "yyyy.mm.dd Hh:Nn:Ss")
    Debug.Print s
End Sub

============================================

测试日期格式

2018.11.08 13.43.26

Windows 10 Pro 版本 10.0.17134 Excel for Office 版本 16.0.11001.20074

其他人有这个吗?

答案1

vba 函数中存在问题。格式似乎使用给定的特殊日期分隔符,但使用区域设置的时间分隔符!天哪!

答案2

使用日期单元格以您想要的格式存储日期:

cell.NumberFormat = "yyyy.mm.dd hh:mm:ss"

答案3

StrReverse(Replace(StrReverse(Format(d, "yyyy.mm.dd Hh:Nn:Ss")), ".", ":", 1, 2))

相关内容