Method: MyMatrix#to_xls
- Defined in:
- lib/mymatrix.rb
#to_xls(outFile = nil, opts = { }) ⇒ Object
xlsにて出力する。
489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 |
# File 'lib/mymatrix.rb', line 489 def to_xls(outFile=nil, opts={ }) default_sheet_name = 'Sheet1' if(outFile =~ /.xls$/) else raise "output file is not xls. set .xls file" end infile =opts[:template] inFile ||= self.file begin xl = Spreadsheet.open(inFile) sheet_str = opts[:sheet] sheet_str ||= default_sheet_name sheet = xl.worksheet(sheet_str) rescue xl = Spreadsheet::Workbook.new sheet = book.create_worksheet sheet.name = default_sheet_name end @headers.each_with_index do |head, i| sheet[0, i] = head end self.each_with_index do |row, i| n = i+1 # line number row.each_with_index do |cell, j| sheet[n, j] = cell end end xl.write(outFile) end |