Documents for Excel, Java Edition Documentation
Features / Slicer / Add Slicer in Table
In This Topic
    Add Slicer in Table
    In This Topic

    You can add slicers in tables and pivot tables using the methods of the ISlicer interface, ISlicerCache interface, and ISlicerCaches interface.

    The 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
    Copy Code
    // 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);