[]
        
(Showing Draft Content)

Duplicate Slicer

You can add duplicate slicer using GcExcel with the help of the Add method of the ISlicerCaches interface.

In order to add duplicate slicer in the worksheet, refer to the following example code.

// Defining source data
object[,] sourceData = new object[,] {
    { "Order ID", "Product", "Category", "Amount", "Date", "Country" },
    { 1, "Carrots", "Vegetables", 4270, new DateTime(2018, 1, 6), "United States" },
    { 2, "Broccoli", "Vegetables", 8239, new DateTime(2018, 1, 7), "United Kingdom" },
    { 3, "Banana", "Fruit", 617, new DateTime(2018, 1, 8), "United States" },
    { 4, "Banana", "Fruit", 8384, new DateTime(2018, 1, 10), "Canada" },
    { 5, "Beans", "Vegetables", 2626, new DateTime(2018, 1, 10), "Germany" },
    { 6, "Orange", "Fruit", 3610, new DateTime(2018, 1, 11), "United States" },
    { 7, "Broccoli", "Vegetables", 9062, new DateTime(2018, 1, 11), "Australia" },
    { 8, "Banana", "Fruit", 6906, new DateTime(2018, 1, 16), "New Zealand" },
    { 9, "Apple", "Fruit", 2417, new DateTime(2018, 1, 16), "France" },
    { 10, "Apple", "Fruit", 7431, new DateTime(2018, 1, 16), "Canada" },
    { 11, "Banana", "Fruit", 8250, new DateTime(2018, 1, 16), "Germany" },
    { 12, "Broccoli", "Vegetables", 7012, new DateTime(2018, 1, 18), "United States" },
    { 13, "Carrots", "Vegetables", 1903, new DateTime(2018, 1, 20), "Germany" },
    { 14, "Broccoli", "Vegetables", 2824, new DateTime(2018, 1, 22), "Canada" },
    { 15, "Apple", "Fruit", 6946, new DateTime(2018, 1, 24), "France" },
};

// Initialize the workbook and fetch the default worksheet
var workbook = new Workbook();
IWorksheet worksheet = workbook.Worksheets[0];
worksheet.Range["A:F"].ColumnWidth = 15;

// Adding data to the table
worksheet.Range["A1:F16"].Value = sourceData;
ITable table = worksheet.Tables.Add(worksheet.Range["A1:F16"], true);
table.Columns[3].DataBodyRange.NumberFormat = "$#,##0.00";

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

// Add slicer for the table
ISlicer slicer = cache.Slicers.Add(workbook.Worksheets["Sheet1"], "cate1", "Category", 30, 550, 100, 200);

// Duplicate slicer
IShape newShape = slicer.Shape.Duplicate();