这是将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之前添加此行。但这将添加额外的列,这不是我正在寻找的。 p>