Excel VBS日期问题(将XLSX转换为TXT后的DATE问题)

时间:2017-03-03 12:29:03

标签: excel excel-vba date datetime vbscript vba

这是将XLSX转换为TXT文件(制表符分隔)

的简单解决方案
Const xlText = -4158

Set objArgs = WScript.Arguments
For I = 0 to objArgs.Count - 1

    FullName = objArgs(I)
    FileName = Left(objArgs(I), InstrRev(objArgs(I), ".") )

    Set objExcel = CreateObject("Excel.application")
    set objExcelBook = objExcel.Workbooks.Open(FullName)

    objExcel.application.visible=false
    objExcel.application.displayalerts=false

    objExcelBook.SaveAs FileName & "txt", xlText

    objExcel.Application.Quit
    objExcel.Quit   

    Set objExcel = Nothing
    set objExcelBook = Nothing

Next

问题是DATE在隐蔽之后,从dd \ mm \ yyyy变为mm \ dd \ yyyy

我的电脑上的地区和其他设置设置为dd \ mm \ yyyy(英国)

有关如何确保此VBS脚本保持日期格式相同的任何想法。

xlText数字可能有任何问题????

尝试过(没有成功)

xlTextMac   19
xlTextMSDOS 21
xlTextPrinter   36
xlTextWindows   20
xlUnicodeText   42

谢谢。

P.S。有什么建议?有什么想法吗?

我有相同的VBS脚本将XLS转换为CSV,并且日期再次转换为美国格式。 (((

这只是我发现的事情,但仍然无法弄明白。

Excel 2007 Save worksheet as CSV differs to save worksheet as csv in VBA

零件解决方案:

  

objExcelBook.Columns(“A:ZZ”)。NumberFormat =“dd / mm / yyyy”

在SAVEAS之前添加此行。但这将添加额外的列,这不是我正在寻找的。

0 个答案:

没有答案