- 论坛徽章:
- 30
|
本帖最后由 shijiang1130 于 2011-08-25 13:49 编辑
- require 'win32ole'
- module E2csv
- def E2csv.firecsv(p)
- excel = WIN32OLE.new('Excel.Application')
- excel.visible = false
- excel.DisplayAlerts = false
- xlCSV = 6
- book = excel.Workbooks.Open(p)
- sheetnum = book.Worksheets.Count
- p = File.basename(p , ".xls")
- while sheetnum > 0 do
- worksheet = book.WorkSheets(sheetnum)
- filename = "c:\\test\\" + p + "_" + sheetnum.to_s + '.csv'
- worksheet.SaveAs(filename,xlCSV)
- sheetnum = sheetnum - 1
- end
- excel.ActiveWorkbook.Close
- excel.Quit()
- end
- end
- mydir = ARGV[0]
- d = Dir.open(mydir)
- for f in d
- case f
- when /^\./
- else
- file = mydir + '\\' + f
- E2csv.firecsv(file)
- end
- end
复制代码
OS: windows xp sp3
Ruby: 1.9.2.p0
ruby els2csv.rb c:\test |
评分
-
查看全部评分
|