diff options
| -rw-r--r-- | examples/split.rb | 16 | ||||
| -rw-r--r-- | lib/axlsx/workbook/worksheet/cell.rb | 12 | ||||
| -rw-r--r-- | test/workbook/worksheet/tc_cell.rb | 6 |
3 files changed, 34 insertions, 0 deletions
diff --git a/examples/split.rb b/examples/split.rb new file mode 100644 index 00000000..b5ffcc05 --- /dev/null +++ b/examples/split.rb @@ -0,0 +1,16 @@ +#!/usr/bin/env ruby -w -s +# -*- coding: utf-8 -*- +$LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib" +require 'axlsx' +p = Axlsx::Package.new +wb = p.workbook +wb.add_worksheet name: 'pane' do |sheet| + sheet.sheet_view.pane do |pane| + pane.top_left_cell = "B2" + pane.state = :frozen_split + pane.y_split = 2 + pane.x_split = 1 + pane.active_pane = :bottom_right + end +end +p.serialize 'pane.xlsx' diff --git a/lib/axlsx/workbook/worksheet/cell.rb b/lib/axlsx/workbook/worksheet/cell.rb index e83e456a..6e3512c5 100644 --- a/lib/axlsx/workbook/worksheet/cell.rb +++ b/lib/axlsx/workbook/worksheet/cell.rb @@ -326,6 +326,18 @@ module Axlsx absolute ? r_abs : r end + + # Creates a defined name in the workbook for this cell. + def name=(label) + row.worksheet.workbook.add_defined_name "#{row.worksheet.name}!#{r_abs}", name: label + @name = label + end + + # returns the name of the cell + def name + @name + end + private # we scale the font size if bold style is applied to either the style font or diff --git a/test/workbook/worksheet/tc_cell.rb b/test/workbook/worksheet/tc_cell.rb index 208b15e0..baa7a9f1 100644 --- a/test/workbook/worksheet/tc_cell.rb +++ b/test/workbook/worksheet/tc_cell.rb @@ -50,6 +50,12 @@ class TestCell < Test::Unit::TestCase assert_equal(@cAA.r_abs,"$AA$2", "needs to accept multi-digit columns") end + def test_name + @c.name = 'foo' + assert_equal(1, @ws.workbook.defined_names.size) + assert_equal('foo', @ws.workbook.defined_names.last.name) + end + def test_style assert_raise(ArgumentError, "must reject invalid style indexes") { @[email protected] } assert_nothing_raised("must allow valid style index changes") {@c.style=1} |
