`
sunfengcheng
  • 浏览: 183791 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ruby 生成Excel电子表格

阅读更多
ruby 生成Excel电子表格
   程序需要解析来自Excel电子数据表的数据,或生成新的Excel的电子数据表。
    要生成Excel文件, 可使用作为第三方gem提供的spreadsheet库。使用它可以创建一张简单的恶Excel的电子数据表。
   下列代码生成的Excel电子数据表。
require 'rubygems'
	require 'spreadsheet/excel'

	SUM_SPREADSHEET = 'sum.xls'
	workbook = Spreadsheet::Excel.new(SUM_SPREADSHEET)
	worksheet = workbook.add_worksheet('Random numbers and their sum.')
	sum = 0
	random_numbers = (0..9).collect { rand(100) }
	worksheet.write_column(0, 0, random_numbers)

	format = workbook.add_format(:bold => true)
	worksheet.write(10, 0, "Sum:", format)
	worksheet.write(10, 1, random_numbers.inject(0) { |sum, x| sum + x })
	workbook.close


要解析一个Excel文件,可以使用也可以作为一个第三方下载的parseexcel库, 它能够从Excel文件格式中解析简单的数据,
require ' 
parseexcel/parser'
	workbook = Spreadsheet::ParseExcel::Parser.new.parse(SUM_SPREADSHEET)

	worksheet = workbook.worksheet(0)
	sum = (0..9).inject(0) do |sum, row|

	  sum + worksheet.cell(row, 0).value.to_i
	end

	worksheet.cell(10, 0).value                              # => "Sum:"
	worksheet.cell(10, 1).value                              # => 602.0
	sum   
                    

与电子数据表类似,parseeexcel不认识电子数据表公式。
6
4
分享到:
评论
1 楼 tcwt008 2008-09-10  
 

相关推荐

Global site tag (gtag.js) - Google Analytics