下面是NON .NET解决方案(不清楚您的“.NET”标签是否意味着.NET是强制性的)。
我会写这样一个VBS/WSH脚本和命令行运行它:
Dim oFSO
Dim oShell, oExcel, oFile, oSheet
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject("WScript.Shell")
Set oExcel = CreateObject("Excel.Application")
oExcel.DisplayAlerts = False
For Each oFile In oFSO.GetFolder("C:\").Files
If LCase(oFSO.GetExtensionName(oFile)) = "xls" Then
With oExcel.Workbooks.Open(oFile, 0, True, , , , True, , , , False, , False)
For Each oSheet In .Worksheets
oSheet.SaveAs ".\" & oFile.Name & "." & oSheet.Name, 6
Next
.Close False, , False
End With
End If
Next
oExcel.Quit
oShell.Popup "Conversion complete", 10
你要知道,这是直接从这里摘录:http://www.computing.net/answers/programming/script-convert-excel-ss-to-csv/16265.html
但我可在将Access表格导出为CSV之前使用了几乎相同的方法,所以我知道VBS脚本是一种可行的(也可能是最简单的)方法。
修改目录名,您认为合适(即我不认为你的文件是在“C:\”这个保存到一个名为export_to_csv.vbs
文件,然后运行:
cscript export_to_csv.vbs
或
wscript export_to_csv.vbs
这是否必须是.NET? – Marc
所有Excel文件具有相同的列? –
它可以是任何东西能比微软的机器上运行(使用Java,Python等) – gfppaste