Я получаю неправильный формат даты при использовании пакетного сценария для преобразования из Excel в CSV - PullRequest
0 голосов
/ 14 февраля 2019

У меня есть файл Excel с датами в Великобритании, когда я запускаю приведенный ниже скрипт для преобразования файла в csv, формат даты изменяется в формате США.Как мне это исправить?Кто-нибудь может посоветовать использовать пакетный скрипт вместо Jscript?

@if (@X)==(@Y) @end /* JScript comment
    @echo off

    cscript //E:JScript //nologo "%~f0" %*

    exit /b %errorlevel%

@if (@X)==(@Y) @end JScript comment */


var ARGS = WScript.Arguments;

var xlCSV = 6;


var objExcel = WScript.CreateObject("Excel.Application");
var objWorkbook = objExcel.Workbooks.Open(ARGS.Item(0));
objExcel.DisplayAlerts = false;
objExcel.Visible = false;

var objWorksheet = objWorkbook.Worksheets(ARGS.Item(1));
objWorksheet.SaveAs( ARGS.Item(2), xlCSV);


objExcel.Quit();

Обновление: я также пробовал этот скрипт vbs, но формат даты все еще меняется с Великобритании на США.

if WScript.Arguments.Count < 2 Then
    WScript.Echo "Please specify the source and the destination files. Usage: ExcelToCsv <xls/xlsx source file> <csv destination file>"
    Wscript.Quit
End If

csv_format = 6

Set objFSO = CreateObject("Scripting.FileSystemObject")

src_file = objFSO.GetAbsolutePathName(Wscript.Arguments.Item(0))
dest_file = objFSO.GetAbsolutePathName(WScript.Arguments.Item(1))

Dim oExcel
Set oExcel = CreateObject("Excel.Application")

Dim oBook
Set oBook = oExcel.Workbooks.Open(src_file)

oBook.SaveAs dest_file, csv_format

oBook.Close False
oExcel.Quit
...