Créer un tableau croisé dynamique

Introduction

Veuillez utiliser la méthode PivotTableCollection.Add() pour créer un tableau croisé dynamique dans la feuille de calcul. Une fois le tableau croisé dynamique créé, vous pouvez travailler avec lui en utilisant la classe PivotTable.

Créer un tableau croisé dynamique

Le code d’exemple suivant montre comment créer un tableau croisé dynamique et travailler avec lui. Veuillez vérifier le fichier Excel de sortie généré avec ce code et la capture d’écran suivante montrant le fichier Excel de sortie dans Microsoft Excel.

todo:image_alt_text

Code d’exemple

Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Output directory path
U16String outPath(u"..\\Data\\Output\\");
//Path of output excel file
U16String outputCreatePivotTable = outPath + u"outputCreatePivotTable.xlsx";
//Load the sample excel file
Workbook wb;
//Access first worksheet
Worksheet ws = wb.GetWorksheets().Get(0);
//Add source data for pivot table
U16String str(u"Fruit");
ws.GetCells().Get(u"A1").PutValue(str);
str = u"Quantity";
ws.GetCells().Get(u"B1").PutValue(str);
str = u"Price";
ws.GetCells().Get(u"C1").PutValue(str);
str = u"Apple";
ws.GetCells().Get(u"A2").PutValue(str);
str = u"Orange";
ws.GetCells().Get(u"A3").PutValue(str);
ws.GetCells().Get(u"B2").PutValue(3);
ws.GetCells().Get(u"B3").PutValue(4);
ws.GetCells().Get(u"C2").PutValue(2);
ws.GetCells().Get(u"C3").PutValue(1);
//Add pivot table
int idx = ws.GetPivotTables().Add(u"A1:C3", u"E5", u"MyPivotTable");
//Access created pivot table
PivotTable pt = ws.GetPivotTables().Get(idx);
//Manipulate pivot table rows, columns and data fields
pt.AddFieldToArea(PivotFieldType::Row, pt.GetBaseFields().Get(0));
pt.AddFieldToArea(PivotFieldType::Data, pt.GetBaseFields().Get(1));
pt.AddFieldToArea(PivotFieldType::Data, pt.GetBaseFields().Get(2));
pt.AddFieldToArea(PivotFieldType::Column, pt.GetDataField());
//Set pivot table style
pt.SetPivotTableStyleType(PivotTableStyleType::PivotTableStyleMedium9);
//Save the output excel file
wb.Save(outputCreatePivotTable);
Aspose::Cells::Cleanup();