【发布时间】:2019-11-09 04:24:06
【问题描述】:
我有一个二维数组,必须将它的一部分打印到一张纸上, 当我将它打印到一张纸上时,大多数日期与它们在本地窗口中的显示完全相同。 其中一些不会显示为美国日期
Sub ConvertDates()
With Range("G1:G76")
.NumberFormat = "dd/mm/yyyy"
.TextToColumns Destination:=Range("G1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False,
_
Semicolon:=False, Comma:=False, Space:=False, Other:=False,
FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
End With
End Sub
如果我在 excel 中更改格式,它只会将日期重新排列为英国格式,但日期是错误的。 EG 11/06/2019 从数组转置为 06/11/2019 但是 2019 年 6 月 13 日从阵列中转换为 2019 年 6 月 13 日。 重新格式化excel中的单元格效果为零,它只是改变了格式 它已经确定的日期在美国格式中是正确的。
如果我运行 VBA 代码来更改格式,它会接受重新格式化并现在显示正确的日期。怎么回事??请参阅转换日期() 但是,如果我将 convertdates() 代码更改为 numberformat = "dd/mm/yyyy" 它会显示不正确的日期??
如果您需要数组代码,我可以显示它,但这很奇怪。
此异常发生的日期是 10,11,12 超出可能的范围 10,11,12,13,14,15,16
【问题讨论】:
标签: arrays excel vba date format