diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs index 3844c2d..54309a7 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs @@ -1326,8 +1326,12 @@ conditionalFormat.ShowIconOnly = !iconSet.ShowValue.Value; if (iconSet.Reverse != null) conditionalFormat.ReverseIconOrder = iconSet.Reverse.Value; + if (iconSet.IconSetValue != null) conditionalFormat.IconSetStyle = iconSet.IconSetValue.Value.ToClosedXml(); + else + conditionalFormat.IconSetStyle = XLIconSetStyle.ThreeTrafficLights1; + ExtractConditionalFormatValueObjects(conditionalFormat, iconSet); } else @@ -1359,8 +1363,11 @@ conditionalFormat.ContentTypes.Add(c.Type.Value.ToClosedXml()); if (c.Val != null) conditionalFormat.Values.Add(c.Val.Value); - if(c.GreaterThanOrEqual != null) + + if (c.GreaterThanOrEqual != null) conditionalFormat.IconSetOperators.Add(c.GreaterThanOrEqual.Value ? XLCFIconSetOperator.EqualOrGreaterThan : XLCFIconSetOperator.GreaterThan); + else + conditionalFormat.IconSetOperators.Add(XLCFIconSetOperator.EqualOrGreaterThan); } foreach (var c in element.Elements()) { diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheet.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheet.cs index 5939efc..fb6c974 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheet.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheet.cs @@ -1149,10 +1149,10 @@ } private void ShiftConditionalFormattingColumns(XLRange range, int columnsShifted) { - Int32 firstColumn = range.RangeAddress.FirstAddress.ColumnNumber - columnsShifted + 1; - if (firstColumn <= 1) return; + Int32 firstColumn = range.RangeAddress.FirstAddress.ColumnNumber; + if (firstColumn == 1) return; - Int32 lastColumn = range.RangeAddress.LastAddress.ColumnNumber - columnsShifted + 1; + Int32 lastColumn = range.RangeAddress.FirstAddress.ColumnNumber + columnsShifted - 1; Int32 firstRow = range.RangeAddress.FirstAddress.RowNumber; Int32 lastRow = range.RangeAddress.LastAddress.RowNumber; var insertedRange = Range(firstRow, firstColumn, lastRow, lastColumn); @@ -1203,10 +1203,10 @@ } private void ShiftConditionalFormattingRows(XLRange range, int rowsShifted) { - Int32 firstRow = range.RangeAddress.FirstAddress.RowNumber - rowsShifted + 1; - if (firstRow <= 1) return; + Int32 firstRow = range.RangeAddress.FirstAddress.RowNumber; + if (firstRow == 1) return; - Int32 lastRow = range.RangeAddress.LastAddress.RowNumber - rowsShifted + 1; + Int32 lastRow = range.RangeAddress.FirstAddress.RowNumber + rowsShifted - 1; Int32 firstColumn = range.RangeAddress.FirstAddress.ColumnNumber; Int32 lastColumn = range.RangeAddress.LastAddress.ColumnNumber; var insertedRange = Range(firstRow, firstColumn, lastRow, lastColumn);