diff --git a/ClosedXML/ClosedXML/ClosedXML.sln b/ClosedXML/ClosedXML/ClosedXML.sln index 6cad801..507e162 100644 --- a/ClosedXML/ClosedXML/ClosedXML.sln +++ b/ClosedXML/ClosedXML/ClosedXML.sln @@ -102,8 +102,8 @@ {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Debug|x86.Build.0 = Debug|x86 {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Any CPU.ActiveCfg = Release|Any CPU {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Any CPU.Build.0 = Release|Any CPU - {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Mixed Platforms.ActiveCfg = Release|x64 - {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Mixed Platforms.Build.0 = Release|x64 + {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|Mixed Platforms.Build.0 = Release|Any CPU {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|x64.ActiveCfg = Release|x64 {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|x64.Build.0 = Release|x64 {BD5E6BFE-E837-4A35-BCA9-39667D873A20}.Release|x86.ActiveCfg = Release|Any CPU diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/Ranges/XLRangeBase.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/Ranges/XLRangeBase.cs index 5b215d7..559a675 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/Ranges/XLRangeBase.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/Ranges/XLRangeBase.cs @@ -737,7 +737,12 @@ public XLCell Cell(XLAddress cellAddressInRange) { - var absoluteAddress = cellAddressInRange + RangeAddress.FirstAddress - 1; + //var absoluteAddress = cellAddressInRange + RangeAddress.FirstAddress - 1; + var absoluteAddress = new XLAddress(cellAddressInRange.Worksheet, + cellAddressInRange.RowNumber + RangeAddress.FirstAddress.RowNumber - 1, + cellAddressInRange.ColumnNumber + RangeAddress.FirstAddress.ColumnNumber - 1, + cellAddressInRange.FixedRow, + cellAddressInRange.FixedColumn); if (absoluteAddress.RowNumber <= 0 || absoluteAddress.RowNumber > XLHelper.MaxRowNumber) { @@ -861,11 +866,22 @@ public XLRange Range(IXLRangeAddress rangeAddress) { - var newFirstCellAddress = (XLAddress)rangeAddress.FirstAddress + RangeAddress.FirstAddress - 1; + + var newFirstCellAddress = new XLAddress((XLWorksheet)rangeAddress.FirstAddress.Worksheet, + rangeAddress.FirstAddress.RowNumber + RangeAddress.FirstAddress.RowNumber - 1, + rangeAddress.FirstAddress.ColumnNumber + RangeAddress.FirstAddress.ColumnNumber - 1, + rangeAddress.FirstAddress.FixedRow, + rangeAddress.FirstAddress.FixedColumn); + newFirstCellAddress.FixedRow = rangeAddress.FirstAddress.FixedRow; newFirstCellAddress.FixedColumn = rangeAddress.FirstAddress.FixedColumn; - var newLastCellAddress = (XLAddress)rangeAddress.LastAddress + RangeAddress.FirstAddress - 1; + var newLastCellAddress = new XLAddress((XLWorksheet)rangeAddress.LastAddress.Worksheet, + rangeAddress.LastAddress.RowNumber + RangeAddress.FirstAddress.RowNumber - 1, + rangeAddress.LastAddress.ColumnNumber + RangeAddress.FirstAddress.ColumnNumber - 1, + rangeAddress.LastAddress.FixedRow, + rangeAddress.LastAddress.FixedColumn); + newLastCellAddress.FixedRow = rangeAddress.LastAddress.FixedRow; newLastCellAddress.FixedColumn = rangeAddress.LastAddress.FixedColumn; diff --git a/ClosedXML/ClosedXML/ClosedXML_Sandbox/Program.cs b/ClosedXML/ClosedXML/ClosedXML_Sandbox/Program.cs index 7a96b36..8024764 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Sandbox/Program.cs +++ b/ClosedXML/ClosedXML/ClosedXML_Sandbox/Program.cs @@ -21,7 +21,7 @@ var end = DateTime.Now; Console.WriteLine((end - start).TotalSeconds); Console.WriteLine("Done"); - Console.ReadKey(); + //Console.ReadKey(); } }