我的代码中有一行:
.Range("D2").Resize(UBound(vef, 1), 1) = vef
其中vef
是包含数据的数组。我可以编辑此行,以便在日期格式vef
dd.mm.yyyy hh:mm:ss
答案 0 :(得分:1)
这应该很容易。您需要做的就是使用相同的范围并更改单元格的数字格式。请注意:粘贴的值不变(数组中的值应为日期)。 Excel应用格式,以便更改显示的内容,但不会丢失基础信息。
如果你的数组中充满了字符串,你会想要预先将它们转换为Dates。 Excel可以隐式执行此操作(例如,它可以自动格式化它们,尽管原始值是日期),但首选显式转换。
对于您的代码,请使用:
With .Range("D2").Resize(UBound(vef, 1), 1)
.Value = vef
.Numberformat = "dd.mm.yyyy hh:mm:ss"
End With
最后,我只想指出,只有你的数组基于1时,你的Ubound(vef, 1)
才有效。如果它基于0,则调整后的范围将偏离1.可用于查找数组中维度长度的公式为:
Length = (Ubound(Array, DimensionNumber) - LBound(Array, DimensionNumber)) + 1
所以在你的情况下:
Length = (Ubound(vef, 1) - LBound(vef, 1)) + 1
祝你好运!