From 758d3a457bac0358724150a893d1df16cd60b5b4 Mon Sep 17 00:00:00 2001 From: Jurriaan Pruis Date: Tue, 4 Mar 2014 23:11:17 +0100 Subject: Fix cell merging, #179 --- lib/axlsx/workbook/worksheet/cell.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'lib') diff --git a/lib/axlsx/workbook/worksheet/cell.rb b/lib/axlsx/workbook/worksheet/cell.rb index 8dec8e92..3ecc73d7 100644 --- a/lib/axlsx/workbook/worksheet/cell.rb +++ b/lib/axlsx/workbook/worksheet/cell.rb @@ -307,12 +307,12 @@ module Axlsx # @see worksheet.merge_cells # @param [Cell, String] target The last cell, or str ref for the cell in the merge range def merge(target) - range_end = if target.is_a?(String) - target - elsif(target.is_a?(Cell)) - target.r - end - self.row.worksheet.merge_cells "#{self.r}:#{range_end}" unless range_end.nil? + start, stop = if target.is_a?(String) + [self.r, target] + elsif(target.is_a?(Cell)) + Axlsx.sort_cells([self, target]).map { |c| c.r } + end + self.row.worksheet.merge_cells "#{start}:#{stop}" unless stop.nil? end # Serializes the cell -- cgit v1.2.3