gpt4 book ai didi

vba - 混淆 dd/mm/yyyy 和 mm/dd/yyyy

转载 作者:行者123 更新时间:2023-12-04 22:01:40 30 4
gpt4 key购买 nike

我有一个 VBA 脚本,可以打开一堆 CSV 文件,并将它们编译成一个摘要报告。

但是,我遇到了一个问题,它以英式日期 (dd/mm/yyyy) 读取,然后在制作副本时将它们解释为美式日期,然后再次将它们显示为英式日期!

因此,原始表中的 7 月 4 日在摘要表中变为 4 月 7 日 - 通过更改单元格格式以显示月份名称进行验证。

这很奇怪,因为当您在 Excel 中打开 CSV 文件时,它会正确解释英式日期。

使用这样的代码进行复制

SummarySheet.Cells(Y,X).value = CSVSheet.Cells(W,Z).value

这里发生了什么?

最佳答案

您没有发布有关如何打开 CSV 文件的代码——这是关键区域。在将日期输入工作表之前,需要正确解析日期。以下代码将选择并打开一个在单列中具有英国风格日期的文件,并正确解析它们。您将需要根据您的特定要求对其进行调整。
FieldInfo争论是做什么的。 Excel 工作表的格式为“显示”,因此您可以看到明确的日期。

Option Explicit
Sub OpenUKcsv()
Dim sFile As String
Dim WB As Workbook
Dim WS As Worksheet

sFile = Application.GetOpenFilename()

Workbooks.OpenText Filename:=sFile, DataType:=xlDelimited, comma:=True, other:=False, _
fieldinfo:=Array(1, 4)

Set WB = ActiveWorkbook
Set WS = ActiveSheet

With WS.Columns(1)
.NumberFormat = "dd-mmm-yyyy"
.EntireColumn.AutoFit
End With

End Sub

关于vba - 混淆 dd/mm/yyyy 和 mm/dd/yyyy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33669979/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com