Применение Условного Форматирования в Листе

Возможные сценарии использования

Aspose.Cells позволяет добавлять все виды условного форматирования, например Формула, Выше среднего, Цветовая шкала, Полоса данных, Набор значков, Топ-10 и т. д. Он предоставляет класс FormatCondition, который имеет все необходимые методы для применения выбранного условного форматирования. Вот список нескольких методов Get.

Применить условное форматирование в листе

В следующем образце кода показано, как добавить условное форматирование значения ячейки на ячейках A1 и B2. Пожалуйста, посмотрите файл Excel-вывода, созданный кодом, а также следующий скриншот, который объясняет эффект кода на файл Excel-вывода. Если вы введете значение больше 100 в ячейку A2 и B2, красный цвет заливки из ячеек A1 и B2 исчезнет.

todo:image_alt_text

Образец кода

Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input
U16String dirPath(u"");
//Path of output
U16String outPath(u"");
//Path of output excel file
U16String outputApplyConditionalFormattingInWorksheet = outPath + u"outputApplyConditionalFormattingInWorksheet.xlsx";
//Create an empty workbook
Workbook wb;
//Access first worksheet
Worksheet ws = wb.GetWorksheets().Get(0);
//Adds an empty conditional formatting
int idx = ws.GetConditionalFormattings().Add();
FormatConditionCollection fcs = ws.GetConditionalFormattings().Get(idx);
//Set the conditional format range
CellArea ca = CellArea::CreateCellArea(u"A1", u"A1");
fcs.AddArea(ca);
ca = CellArea::CreateCellArea(u"B2", u"B2");
fcs.AddArea(ca);
//Add condition and set the background color
idx = fcs.AddCondition(FormatConditionType::CellValue, OperatorType::Between, u"=A2", u"100");
FormatCondition fc = fcs.Get(idx);
fc.GetStyle().SetBackgroundColor(Color{ 0xff,0xff ,0 ,0 });//Red
//User friendly message to test the output excel file.
U16String msgStr = u"Red color in cells A1 and B2 is because of Conditional Formatting. Put 101 or any value >100 in cell A2 and B2, you will see Red background color will be gone.";
ws.GetCells().Get(u"A10").PutValue(msgStr);
//Save the output excel file
wb.Save(outputApplyConditionalFormattingInWorksheet);
Aspose::Cells::Cleanup();