I am trying to learn how to use “spreadsheet” so I can create an Excel
file.
To that effect, I installed:
1 - spreadsheet
2 - ruby-ole
I noticed that the Rdoc for “spreadsheet” contains an example which
looks simple enough to learn, and so I cut/pasted it into a file.
I tried running the file and got the errors listed below.
Any help will be appreciated!
Thank you
First, make sure all that code is loaded:
require 'spreadsheet'
Worksheets come in various Encodings.
# You need to tell Spreadsheet which Encoding you
want to deal with.
# The Default is UTF-8
Spreadsheet.client_encoding = 'UTF-8'
book = Spreadsheet::Workbook.new
sheet1 = book.create_worksheet
sheet1.row(0).concat %w{Name Country Acknowlegement}
sheet1[1,0] = ‘Japan’
row = sheet1.row(1)
row.push ‘Creator of Ruby’
row.unshift ‘Yukihiro M.’
sheet1.row(2).replace [ ‘Daniel J. Berger’, ‘U.S.A.’,
‘Author of original code for Spreadsheet::Excel’ ]
sheet1.row(3).push ‘Charles L.’, ‘Author of the ruby-ole Library’
sheet1.row(3).insert 1, ‘Unknown’
sheet1.update_row 4, ‘Hannes W.’, ‘Switzerland’, ‘Author’
Add some Formatting for flavour:
sheet1.row(0).height = 18
format = Spreadsheet::Format.new :color => :blue,
:weight => :bold,
:size => 18
sheet1.row(0).default_format = format
bold = Spreadsheet::Format.new :weight => :bold
4.times do |x| sheet1.row(x + 1).set_format(0, bold) end
And finally, write the Excel File:
book.write ‘/F:/MyFiles/excel-file.xls’
F:>ruby ss.rb
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/types/base.rb:1:in
require': no such file to load -- iconv (LoadError) from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/types/base.rb:1:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/types.rb:1:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/types.rb:1:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage/base.rb:4:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage/base.rb:4:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage.rb:1:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage.rb:1:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage/file_system.rb:32:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/storage/file_system.rb:32:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/file_system.rb:2:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/ruby-ole-1.2.10/lib/ole/file_system.rb:2:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/writer/workbook.rb:6:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/writer/workbook.rb:6:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/writer.rb:1:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/writer.rb:1:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/workbook.rb:3:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet/excel/workbook.rb:3:in
<top (required)>’
from
C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet.rb:27:in
require' from C:/ruby/lib/ruby/gems/1.9.1/gems/spreadsheet-0.6.4.1/lib/spreadsheet.rb:27:in
<top (required)>’
from ss.rb:3:in require' from ss.rb:3:in
’
F:>gem list
*** LOCAL GEMS ***
ezcrypto (0.7.2)
innate (2009.06.12)
rack (1.0.0)
ramaze (2009.06.12)
ruby-ole (1.2.10)
rubygems-update (1.3.4)
spreadsheet (0.6.4.1)
wxruby-ruby19 (2.0.0)
F:>ruby -v
ruby 1.9.1p0 (2009-01-30 revision 21907) [i386-mingw32]
Running under Windows/XP for now.