我正在使用http://spreadsheet.rubyforge.org生成电子表格,但遇到了一些问题。我正在打开一个现有的工作簿并向其中添加数据。
我已经设法让数字格式在某种程度上起作用,至少 excel 将此数据视为数字,但是(非常不像 excel)客户希望数字在中心对齐:(
我当前的代码如下所示:
nfmt = Spreadsheet::Format.new :number_format => '0.00'
row = sheet.row(1)
row[0] = "Result"
row[1] = 45.55
row.set_format 1, nfmt
也许有点牵强,但想知道是否有人可以提供帮助?
- 电子表格目前不修改格式。这尤其意味着,如果将单元格的值设置为日期,则只有在更改之前其格式设置正确时,才能将其读取为日期。
为 Trevoke 编辑
感谢您提供帮助。我试过你的代码,它工作正常。我想不同之处在于我正在编辑现有的电子表格,在这种情况下格式被忽略。试试这个:
require 'rubygems'
require 'spreadsheet'
Spreadsheet.client_encoding = 'UTF-8'
book = Spreadsheet.open "edit_me.xls" # Blank spreadsheet
sheet1 = book.worksheet 0
format = Spreadsheet::Format.new :horizontal_align => :centre
sheet1.row(0).default_format = format
sheet1.row(0).push 'I rule 2!', 43.56
book.write 'edited_you.xls'