使用ADO和 「SELECT ... INTO ...外部數據庫中...」:
Dim goFS : Set goFS = CreateObject("Scripting.FileSystemObject")
Dim sTDir : sTDir = resolvePath("..\data\ExcelCsv2")
Dim sXFSpec : sXFSpec = goFS.BuildPath(sTDir, "xls.xls")
Dim sTFiNa : sTFiNa = "csv.csv"
Dim sTFSpec : sTFSpec = goFS.BuildPath(sTDir, sTFiNa)
If goFS.FileExists(sTFSpec) Then goFS.DeleteFile sTFSpec
Dim oDb : Set oDb = CreateObject("ADODB.Connection")
oDb.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sXFSpec & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
WScript.Echo sXFSpec
WScript.Echo oDb.Execute("SELECT * FROM Demo").GetString(2, , vbTab, vbCrLf)
oDb.Execute "SELECT * INTO [" & sTFiNa & "] IN '" & sTDir & "' 'Text;' FROM Demo"
WScript.Echo sTFSpec
WScript.Echo oDb.Execute("SELECT * FROM [" & sTFiNa & "] IN '" & sTDir & "' 'Text;'").GetString(2, , vbTab, vbCrLf)
oDb.Close
輸出:
E:\trials\SoTrials\answers\8328305\data\ExcelCsv2\xls.xls
1 1,1 10.12.2011 text elm 1
2 2,2 11.12.2011 text elm 2
3 4,4 12.12.2011 text elm 3
E:\trials\SoTrials\answers\8328305\data\ExcelCsv2\csv.csv
1 1,1 10.12.2011 text elm 1
2 2,2 11.12.2011 text elm 2
3 4,4 12.12.2011 text elm 3
(參見this answer)
請注意,在64位系統上,您需要使用32位解釋器(來自'C:\ Windows \ SysWOW64')運行此操作。 – 2014-10-28 10:12:28