Sha256: 16e91ceba1345c586ef5b51f084baa91dca392b6ceda010d598ef328df31beb3

Contents?: true

Size: 1.52 KB

Versions: 38

Compression:

Stored size: 1.52 KB

Contents

#!/usr/bin/ruby -w
# -*- coding: utf-8 -*-

##############################################################################
#
# Demonstrates how to wrap data from one worksheet onto another.
#
# Excel has a row limit of 65536 rows. Sometimes the amount of row data to be
# written to a file is greater than this limit. In this case it is a useful
# technique to wrap the data from one worksheet onto the next so that we get
# something like the following:
#
#   Sheet1  Row     1  -  65536
#   Sheet2  Row 65537  - 131072
#   Sheet3  Row 131073 - ...
#
# In order to achieve this we use a single worksheet reference and
# reinitialise it to point to a new worksheet when required.
#
# reverse('©'), May 2006, John McNamara, jmcnamara@cpan.org
#
# original written in Perl by John McNamara
# converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
#

require 'writeexcel'

workbook  = WriteExcel.new('row_wrap.xls')
worksheet = workbook.add_worksheet

# Worksheet formatting.
worksheet.set_column('A:A', 20)

# For the sake of this example we will use a small row limit. In order to use
# the entire row range set the row_limit to 65536.
row_limit = 10
row       = 0

(1 .. 2 * row_limit + 10).each do |count|
  # When we hit the row limit we redirect the output
  # to a new worksheet and reset the row number.
  if row == row_limit
    worksheet = workbook.add_worksheet
    row = 0

    # Repeat any worksheet formatting.
    worksheet.set_column('A:A', 20)
  end
  worksheet.write(row, 0,  "This is row #{count}")
  row += 1
end

workbook.close

Version data entries

38 entries across 38 versions & 3 rubygems

Version Path
writeexcel-1.0.9 examples/row_wrap.rb
writeexcel-1.0.8 examples/row_wrap.rb
writeexcel-1.0.7 examples/row_wrap.rb
writeexcel-1.0.6 examples/row_wrap.rb
writeexcel-1.0.5 examples/row_wrap.rb
writeexcel-1.0.4 examples/row_wrap.rb
writeexcel-1.0.3 examples/row_wrap.rb
writeexcel-1.0.2 examples/row_wrap.rb
writeexcel-1.0.1 examples/row_wrap.rb
writeexcel-1.0.0 examples/row_wrap.rb
writeexcel-0.6.19 examples/row_wrap.rb
writeexcel-0.6.18 examples/row_wrap.rb
writeexcel-0.6.17 examples/row_wrap.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.16/examples/row_wrap.rb
writeexcel-0.6.16 examples/row_wrap.rb
writeexcel-0.6.15 examples/row_wrap.rb
writeexcel-0.6.14 examples/row_wrap.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/examples/row_wrap.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/examples/row_wrap.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/examples/row_wrap.rb