# Add Slicer in Table

Learn how to add a slicer in a table using DsExcel through a sample code.

## Content





You can add slicers in tables and pivot tables using the methods of the [ISlicer](/document-solutions/java-excel-api/api/online/com/grapecity/documents/excel/ISlicer.html) interface, [ISlicerCache](/document-solutions/java-excel-api/api/online/com/grapecity/documents/excel/ISlicerCache.html) interface, and [ISlicerCaches](/document-solutions/java-excel-api/api/online/com/grapecity/documents/excel/ISlicerCaches.html) interface.

The [add](/document-solutions/java-excel-api/api/online/com/grapecity/documents/excel/ISlicerCaches.html#add) method of the ISlicerCaches interface allows users to create a new slicer cache for a table.

Refer to the following example code to add slicer in a table.

```Java
// Defining source data
Object sourceData = new Object[][] 
{ 
   { "Order ID", "Product", "Category", "Amount", "Date", "Country" },
   { 1, "Carrots", "Vegetables", 4270, new GregorianCalendar(2018, 0, 6), "United States" },
   { 2, "Broccoli", "Vegetables", 8239, new GregorianCalendar(2018, 0, 7), "United Kingdom" },
   { 3, "Banana", "Fruit", 617, new GregorianCalendar(2018, 0, 8), "United States" },
   { 4, "Banana", "Fruit", 8384, new GregorianCalendar(2018, 0, 10), "Canada" },
   { 5, "Beans", "Vegetables", 2626, new GregorianCalendar(2018, 0, 10), "Germany" },
   { 6, "Orange", "Fruit", 3610, new GregorianCalendar(2018, 0, 11), "United States" },
   { 7, "Broccoli", "Vegetables", 9062, new GregorianCalendar(2018, 0, 11), "Australia" },
   { 8, "Banana", "Fruit", 6906, new GregorianCalendar(2018, 0, 16), "New Zealand" },
   { 9, "Apple", "Fruit", 2417, new GregorianCalendar(2018, 0, 16), "France" },
   { 10, "Apple", "Fruit", 7431, new GregorianCalendar(2018, 0, 16), "Canada" },
   { 11, "Banana", "Fruit", 8250, new GregorianCalendar(2018, 0, 16), "Germany" },
   { 12, "Broccoli", "Vegetables", 7012, new GregorianCalendar(2018, 0, 18), "United States" },
   { 13, "Carrots", "Vegetables", 1903, new GregorianCalendar(2018, 0, 20), "Germany" },
   { 14, "Broccoli", "Vegetables", 2824, new GregorianCalendar(2018, 0, 22), "Canada" },
   { 15, "Apple", "Fruit", 6946, new GregorianCalendar(2018, 0, 24), "France" }, 
};
        
// Initialize the workbook and fetch the default worksheet
IWorksheet worksheet = workbook.getWorksheets().get(0);
worksheet.getRange("A:F").setColumnWidth(15);
        
// Adding data to the table
worksheet.getRange("A1:F16").setValue(sourceData);
ITable table = worksheet.getTables().add(worksheet.getRange("A1:F16"), true);
table.getColumns().get(3).getDataBodyRange().setNumberFormat("$#,##0.00");

// Create slicer cache for table.
ISlicerCache cache = workbook.getSlicerCaches().add(table, "Category", "categoryCache");

// Add slicers for table 
ISlicer slicer1 = cache.getSlicers().add(workbook.getWorksheets().get("Sheet1"), "cate1", 
"Category", 30, 550, 100, 200);
ISlicer slicer2 = cache.getSlicers().add(workbook.getWorksheets().get("Sheet1"), "cate2", 
"Category", 30, 700, 100, 200);
```


> !type=note
>
> **Note**: DsExcel supports .xlsx, .sjs, and .ssjson file I/O operations, as well as PDF and image export of documents having timeline slicer and its data.
