Creating Subtotals

Creating Subtotals

The following sample code shows how to create subtotals using Aspose.Cells. The code loads the sample excel file and creates subtotals on the cell range B13:C19 and saves the output excel file. The following screenshot shows how the sample and output excel file looks after the execution of the code.

todo:image_alt_text

Sample Code

Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input
U16String dirPath(u"");
//Path of output
U16String outPath(u"");
//Path of input excel file
U16String sampleCreatingSubtotals = dirPath + u"sampleCreatingSubtotals.xlsx";
//Path of output excel file
U16String outputCreatingSubtotals = outPath + u"outputCreatingSubtotals.xlsx";
//Load sample excel file into a workbook object
Workbook wb(sampleCreatingSubtotals);
//Get first worksheet of the workbook
Worksheet ws = wb.GetWorksheets().Get(0);
//Get the cells collection of the worksheet
Cells cells = ws.GetCells();
//Create cell area covering the cell range B3:C19
CellArea ca = CellArea::CreateCellArea(u"B3", u"C19");
//Create integer array of size 1 and set its first value to 1
int data[1]{1};
Vector<int> totalList(data,1);
//Apply subtotal, the consolidation function is Sum and it will be applied to second column
cells.Subtotal(ca, 0, ConsolidationFunction::Sum, totalList);
//Save the workbook in xlsx format
wb.Save(outputCreatingSubtotals);
Aspose::Cells::Cleanup();