public void ColorScaleComparing() { using (var wb = new XLWorkbook()) { var ws = wb.Worksheets.Add("Sheet"); var ranges = ws.Ranges("B3:B8,C3:C4,A3:A4,C5:C8,A5:A8").Cast <XLRange>(); var cf1 = new XLConditionalFormat(ranges); cf1.ColorScale() .LowestValue(XLColor.Red) .HighestValue(XLColor.Green); var cf2 = new XLConditionalFormat(ranges); cf2.ColorScale() .LowestValue(XLColor.Red) .HighestValue(XLColor.Green); Assert.True(XLConditionalFormat.NoRangeComparer.Equals(cf1, cf2)); } }
public void ConsolidateShiftsFormulaRelativelyToTopMostCell() { var wb = new XLWorkbook(); IXLWorksheet ws = wb.Worksheets.Add("Sheet"); var ranges = ws.Ranges("B3:B8,C3:C4,A3:A4,C5:C8,A5:A8").Cast <XLRange>(); var cf = new XLConditionalFormat(ranges); cf.Values.Add(new XLFormula("=A3=$D3")); cf.Style.Fill.SetBackgroundColor(XLColor.Red); ws.ConditionalFormats.Add(cf); ((XLConditionalFormats)ws.ConditionalFormats).Consolidate(); Assert.AreEqual(1, ws.ConditionalFormats.Count()); Assert.AreEqual((ws.ConditionalFormats.Single().Style as XLStyle).Value, (cf.Style as XLStyle).Value); Assert.AreEqual("A3:C8", ws.ConditionalFormats.Single().Ranges.Single().RangeAddress.ToString()); Assert.IsTrue(ws.ConditionalFormats.Single().Values.Single().Value.IsFormula); Assert.AreEqual("A3=$D3", ws.ConditionalFormats.Single().Values.Single().Value.Value); }
public XLCFColorScaleMax(XLConditionalFormat conditionalFormat) { _conditionalFormat = conditionalFormat; }
public XLCFIconSet(XLConditionalFormat conditionalFormat) { _conditionalFormat = conditionalFormat; }
public XLCFDataBarMax(XLConditionalFormat conditionalFormat) { _conditionalFormat = conditionalFormat; }
internal void BreakConditionalFormatsIntoCells(List<IXLAddress> addresses) { var newConditionalFormats = new XLConditionalFormats(); SuspendEvents(); foreach (var conditionalFormat in ConditionalFormats) { foreach (XLCell cell in conditionalFormat.Range.Cells(c=>!addresses.Contains(c.Address))) { var row = cell.Address.RowNumber; var column = cell.Address.ColumnLetter; var newConditionalFormat = new XLConditionalFormat(cell.AsRange(), true); newConditionalFormat.CopyFrom(conditionalFormat); newConditionalFormat.Values.Values.Where(f => f.IsFormula) .ForEach(f => f._value = XLHelper.ReplaceRelative(f.Value, row, column)); newConditionalFormats.Add(newConditionalFormat); } conditionalFormat.Range.Dispose(); } ResumeEvents(); ConditionalFormats = newConditionalFormats; }