Syncfusion.XlsIO.Base
Example 


System.Drawing.Color to be filtered.
ExcelColorFilterType applied.

AddColorFilter Method

Add Color Filter with the specified System.Drawing.Color object
Syntax
'Declaration
 
Sub AddColorFilter( _
   ByVal color As Color, _
   ByVal colorFilterType As ExcelColorFilterType _
) 
'Usage
 
Dim instance As IAutoFilter
Dim color As Color
Dim colorFilterType As ExcelColorFilterType
 
instance.AddColorFilter(color, colorFilterType)

Parameters

color
System.Drawing.Color to be filtered.
colorFilterType
ExcelColorFilterType applied.
Remarks
To apply filters within tables in worksheet, we have to set the IAutoFilters as child of IListObject. The range for the IAutoFilters will be same as the IListObject.Location.
Example
Color filter can be applied based on ExcelColorFilterType.CellColor or ExcelColorFilterType.FontColor. Here for example, we apply filter based on ExcelColorFilterType.CellColor.
using Syncfusion.XlsIO;
using System.Drawing;
            
class Program
{
    static void Main()
    {
        using (ExcelEngine excelEngine = new ExcelEngine())
        {
            //Create worksheet
            IApplication application = excelEngine.Excel;
            application.DefaultVersion = ExcelVersion.Excel2013;
            IWorkbook workbook = application.Workbooks.Create(1);
            IWorksheet worksheet = workbook.Worksheets[0];
            
            //Load data
            worksheet["A1"].Text = "Products";
            worksheet["A2"].Text = "Alfreds Futterkiste";
            worksheet["A3"].Text = "Antonio Moreno Taqueria";
            worksheet["A4"].Text = "Around the Horn";
            worksheet["A5"].Text = "Bon app";
            worksheet["A6"].Text = "Eastern Connection";
            worksheet["A7"].Text = "Ernst Handel";
            worksheet["B1"].Text = "Qtr1";
            worksheet["B2"].Number = 744.6;
            worksheet["B3"].Number = 5079.6;
            worksheet["B4"].Number = 1267.5;
            worksheet["B5"].Number = 1418;
            worksheet["B6"].Number = 4728;
            worksheet["B7"].Number = 943.89;
            worksheet["C1"].Text = "Qtr2";
            worksheet["C2"].Number = 162.56;
            worksheet["C3"].Number = 1249.2;
            worksheet["C4"].Number = 1062.5;
            worksheet["C5"].Number = 756;
            worksheet["C6"].Number = 4547.92;
            worksheet["C7"].Number = 349.6;
            
            //Create style for table number format
            IStyle style1 = workbook.Styles.Add("CurrencyFormat");
            style1.NumberFormat = "_($* #,##0.00_);_($* (#,##0.00);_($* \" - \"??_);_(@_)";
            
            //Apply number format
            worksheet["B2:C8"].CellStyleName = "CurrencyFormat";
            
            //Apply colors
            worksheet["A2:A3"].CellStyle.Color = Color.Red;
            worksheet["A4:A5"].CellStyle.Color = Color.Blue;
            worksheet["A6:A7"].CellStyle.Color = Color.Green;
            
            //Create filters collection
            IAutoFilters filters = worksheet.AutoFilters;
            
            //Set range
            filters.FilterRange = worksheet["A1:C7"];
            
            //Set filter column
            IAutoFilter filter = filters[0];
            
            //Add filter
            filter.AddColorFilter(Color.Blue, ExcelColorFilterType.CellColor);
            
            //Apply AutoFit
            worksheet.UsedRange.AutofitColumns();
            
            //Save and Dispose
            workbook.SaveAs("Filters.xlsx");
            workbook.Close();
        }
    }
}
AssemblyVersion

Syncfusion.XlsIO.Base: 17.1460.0.32

See Also