From 94f8dfd7645fa50be2a2f9c7f561a4ee22556001 Mon Sep 17 00:00:00 2001 From: Jurriaan Pruis Date: Thu, 1 Mar 2012 13:11:32 +0100 Subject: Accept row numbers in Worksheet#[] --- lib/axlsx/workbook/worksheet/worksheet.rb | 3 ++- test/workbook/worksheet/tc_worksheet.rb | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/axlsx/workbook/worksheet/worksheet.rb b/lib/axlsx/workbook/worksheet/worksheet.rb index d1c8e6ac..68a3e3c6 100644 --- a/lib/axlsx/workbook/worksheet/worksheet.rb +++ b/lib/axlsx/workbook/worksheet/worksheet.rb @@ -112,9 +112,10 @@ module Axlsx # Returns the cell or cells defined using excel style A1:B3 references. - # @param [String] cell_def the string defining the cell or range of cells + # @param [String|Integer] cell_def the string defining the cell or range of cells, or the rownumber # @return [Cell, Array] def [](cell_def) + return rows[cell_def - 1] if cell_def.is_a? Integer parts = cell_def.split(':') first = name_to_cell parts[0] diff --git a/test/workbook/worksheet/tc_worksheet.rb b/test/workbook/worksheet/tc_worksheet.rb index ac71fce3..97845c92 100644 --- a/test/workbook/worksheet/tc_worksheet.rb +++ b/test/workbook/worksheet/tc_worksheet.rb @@ -62,6 +62,10 @@ class TestWorksheet < Test::Unit::TestCase @ws.add_row [1, 2, 3] @ws.add_row [4, 5, 6] range = @ws["A1:C2"] + first_row = @ws[1] + last_row = @ws[2] + assert_equal(@ws.rows[0],first_row) + assert_equal(@ws.rows[1],last_row) assert_equal(range.size, 6) assert_equal(range.first, @ws.rows.first.cells.first) assert_equal(range.last, @ws.rows.last.cells.last) -- cgit v1.2.3