2015-04-19 20 views
0

我想知道是否有方法使用批處理腳本從excel文件中提取和過濾(僅選擇一些列和行)數據。我已經在谷歌尋找答案,但徒勞無功。需要幫助exctract和使用批處理腳本過濾excel數據

+0

不可能用簡單的batch.You'll需要的JScript/VBScript中混合,PowerShell的或selfcomiled .NET – npocmaka

+0

我需要在同一批次中執行其他操作:從FTP服務器提取excel文件,過濾該文件並將數據插入數據庫。所以我不知道是否PowerShell可以做所有這些事情 – maryam

+0

是的,它可以......它比批處理更強大。 – npocmaka

回答

1
Const adOpenStatic = 3 
Const adLockOptimistic = 3 
Const adCmdText = &H0001 

Set objConnection = CreateObject("ADODB.Connection") 
Set objRecordSet = CreateObject("ADODB.Recordset") 


objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=""C:\Users\David Candy\Documents\Alcohol.xls"";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";" 

objRecordset.Open "SELECT * FROM `C:\Users\David Candy\Documents\Alcohol`.`Sheet1$` `Sheet1$`", _ 
      objConnection, adOpenStatic, adLockOptimistic, adCmdText 


Do Until objRecordset.EOF 
    Wscript.Echo "Name: " & objRecordset.Fields.Item("Price") 
    objRecordset.MoveNext 
Loop 

cscript的運行

cscript //nologo c:\pathto\script.vbs 

它寫入Price列控制檯

+0

不錯。 x64噴墨驅動程序是否有excel連接器? – npocmaka

+0

不知道。我使用32位。我運行16位程序。 – Trigger

+0

在某些版本的Excel中,至少有兩個32位驅動程序。這個網站提供了excel的所有連接字符串 - https://www.connectionstrings.com/excel – Trigger