我想将日期格式dd / mm / yyyy的格式更改为yyyy.mm.dd。
sub m()
dim date1 as date
dim date2 as date
date1= #1/1/2008#
date2= #1/1/2008#
for conteo = date1 to date2
conteo = Format$(conteo, "yyyy.mm.dd")
sheets(1).range("A1").value= conteo
next conteo
end sub
如下所示:
conteo = Format$(conteo, "yyyy.mm.dd")
它会转换,但它会在日期和我更改" yyyy.mm.dd"之间引用。进入yyyy.mm.dd格式函数我面对"对象需要"错误。
由于
答案 0 :(得分:2)
首先,您使用相同的变量作为循环ctr和存储格式化字符串。
还从格式中删除$。 (或者,请参阅评论中@thunderframe解释的原因。)
您将在调试原因格式中看到引号(“)返回一个字符串,但是当您在单元格中放下该值时,它将消失。
Sub m()
Dim date1 As Date
Dim date2 As Date
date1 = #1/1/2008#
date2 = #1/1/2008#
For conteo = date1 To date2
strDate = Format(conteo, "yyyy.mm.dd")
Sheets(1).Range("A1").Value = strDate
Next conteo
End Sub
此外,由于您已将date1和date2设为Date
类型,因此将采用另一种更好的方法。
Sub m()
Dim date1 As Date
Dim date2 As Date
date1 = #1/1/2008#
date2 = #1/1/2008#
For conteo = date1 To date2
Sheets(1).Range("A1").NumberFormat = "YYYY.MM.DD"
Sheets(1).Range("A1").Value2 = conteo
Next conteo
End Sub