Применение затенения к чередующимся строкам и столбцам с условным форматированием
Contents
[
Hide
]
Aspose.Cells API-интерфейсы предоставляют средства для добавления и управления правилами условного форматирования дляРабочий листобъект. Эти правила можно настроить несколькими способами, чтобы получить желаемое форматирование на основе условий или правил. В этой статье будет продемонстрировано использование API-интерфейсов Aspose.Cells for .NET для применения затенения к чередующимся строкам и столбцам с помощью правил условного форматирования и встроенных функций Excel.
В этой статье используются встроенные функции Excel, такие как ROW, COLUMN и MOD. Вот некоторые подробности об этих функциях для лучшего понимания приведенного ниже фрагмента кода.
- СТРОКА() Функция возвращает номер строки ссылки на ячейку. Если параметр ссылки опущен, предполагается, что ссылкой является адрес ячейки, в которой была введена функция ROW.
- СТОЛБЕЦ() Функция возвращает номер столбца ссылки на ячейку. Если параметр ссылки опущен, предполагается, что ссылкой является адрес ячейки, в которой была введена функция СТОЛБЦ.
- МОД() Функция возвращает остаток после деления числа на делитель, где первый параметр функции — это числовое значение, остаток от которого вы хотите найти, а второй параметр — это число, используемое для деления на числовой параметр. Если делитель равен 0, то он вернет #DIV/0! ошибка.
Давайте начнем писать код для достижения этой цели с помощью Aspose.Cells for .NET API.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create an instance of Workbook or load existing | |
var book = new Workbook(); | |
// Access the Worksheet on which desired rule has to be applied | |
var sheet = book.Worksheets[0]; | |
// Add FormatConditions to the instance of Worksheet | |
int idx = sheet.ConditionalFormattings.Add(); | |
// Access the newly added FormatConditions via its index | |
var conditionCollection = sheet.ConditionalFormattings[idx]; | |
// Define a CellsArea on which conditional formatting will be applicable | |
// The code creates a CellArea ranging from A1 to I20 | |
var area = CellArea.CreateCellArea("A1", "I20"); | |
//Add area to the instance of FormatConditions | |
conditionCollection.AddArea(area); | |
// Add a condition to the instance of FormatConditions | |
// For this case, the condition type is expression, which is based on some formula | |
idx = conditionCollection.AddCondition(FormatConditionType.Expression); | |
// Access the newly added FormatCondition via its index | |
FormatCondition formatCondirion = conditionCollection[idx]; | |
// Set the formula for the FormatCondition | |
// Formula uses the Excel's built-in functions as discussed earlier in this article | |
formatCondirion.Formula1 = @"=MOD(ROW(),2)=0"; | |
// Set the background color and patter for the FormatCondition's Style | |
formatCondirion.Style.BackgroundColor = Color.Blue; | |
formatCondirion.Style.Pattern = BackgroundType.Solid; | |
// Save the result on disk | |
book.Save(dataDir + "output_out.xlsx"); |
На следующем снимке показана результирующая электронная таблица, загруженная в приложение Excel.
![]() |
---|
Чтобы применить затенение к альтернативным столбцам, все, что вам нужно сделать, это изменить формулу**= ОСТАТ (СТРОКА (), 2) = 0** как**= ОСТАТ (СТОЛБЦ (), 2) = 0** , это; вместо получения индекса строки измените формулу, чтобы получить индекс столбца. Результирующая электронная таблица в этом случае будет выглядеть следующим образом.
![]() |
---|