[英]String to UK Date Format
我有类似下面的内容。
mth = 08
dy = 12
yr = 2014
dt = dy & "/" & mth & "/" & yr
Cells(i,j) = dt
代码运行时,日期将转换为美国格式,因此实际上显示为mmddyyyy,而不是ddmmyyyy。
我怎样才能解决这个问题?
赶紧跑
Cells(i,j).NumberFormat = "dd mm yyyy"
而且应该没问题
尽管您已经有了答案,但我将把它和我的首选方法一起使用:
Cells(i,j) = DateSerial(yr, mth, dy)
这应该避免任何意外的格式,因为您没有将值放入字符串中,而是要求VBA将字符串转换为日期。
尝试这个:
Sub test()
Dim mth As Integer
Dim dy As Integer
Dim yr As Integer
Dim dt As Date
mth = 8
dy = 12
yr = 2014
dt = Format(DateSerial(yr, mth, dy), "dd mm yyyy")
Cells(1, 1) = dt
End Sub
这取决于您要如何处理。 如果仅将其用于显示,则可以在值前加上撇号。 这指示Excel将值解释为文本。
dt = "'" & dy & "/" & mth & "/" & yr
如果要进行日期计算(包括排序),则可以使用建议的“ DateSerial”函数,但必须将列的格式设置为所需的格式,否则Excel将使用默认格式。
Cells(i,j).NumberFormat = "dd/mm/yyyy"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.