Pivot Tabelle bearbeiten
Mögliche Verwendungsszenarien
Neben dem Erstellen neuer Pivot-Tabellen können Sie die neuen und vorhandenen Pivot-Tabellen bearbeiten. Sie können die Daten im Quellenbereich der Pivot-Tabelle ändern und dann aktualisieren und berechnen und die neuen Werte der Zellen der Pivot-Tabelle erhalten. Verwenden Sie bitte die Methoden PivotTable.RefreshData() und PivotTable.CalculateData() nachdem Sie die Werte im Quellenbereich der Pivot-Tabelle geändert haben, um die Pivot-Tabelle zu aktualisieren.
Pivot-Tabelle bearbeiten
Der folgende Beispielcode lädt die Beispieldatei für Excel und greift auf die vorhandene Pivot-Tabelle in deren erster Arbeitsblatt zu. Er ändert den Wert der Zelle B3, die sich im Quellenbereich der Pivot-Tabelle befindet, und aktualisiert dann die Pivot-Tabelle. Bevor die Pivot-Tabelle aktualisiert wird, greift er auf den Wert der Pivot-Tabellenzelle H8 zu, der 15 beträgt, und nachdem die Pivot-Tabelle aktualisiert wurde, ändert sich der Wert auf 6. Bitte sehen Sie sich die mit diesem Code generierte Ausgabedatei für Excel und den Screenshot an, der die Auswirkungen des Beispielcodes auf die Beispieldatei für Excel zeigt. Bitte sehen Sie auch die unten stehende Konsolenausgabe, in der der Wert der Pivot-Tabellenzelle H8 vor und nach der Aktualisierung der Pivot-Tabelle angezeigt wird.
Beispielcode
Aspose::Cells::Startup(); | |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Source directory path | |
U16String dirPath(u"..\\Data\\PivotTables\\"); | |
//Output directory path | |
U16String outPath(u"..\\Data\\Output\\"); | |
//Path of input excel file | |
U16String sampleManipulatePivotTable = dirPath + u"sampleManipulatePivotTable.xlsx"; | |
//Path of output excel file | |
U16String outputManipulatePivotTable = outPath + u"outputManipulatePivotTable.xlsx"; | |
//Load the sample excel file | |
Workbook wb(sampleManipulatePivotTable); | |
//Access first worksheet | |
Worksheet ws = wb.GetWorksheets().Get(0); | |
//Change value of cell B3 which is inside the source data of pivot table | |
ws.GetCells().Get(u"B3").PutValue(u"Cup"); | |
//Get the value of cell H8 before refreshing pivot table | |
U16String val = ws.GetCells().Get(u"H8").GetStringValue(); | |
std::cout << "Before refreshing Pivot Table value of cell H8: " << val.ToUtf8() << std::endl; | |
//Access pivot table, refresh and calculate it | |
PivotTable pt = ws.GetPivotTables().Get(0); | |
pt.RefreshData(); | |
pt.CalculateData(); | |
//Get the value of cell H8 after refreshing pivot table | |
val = ws.GetCells().Get(u"H8").GetStringValue(); | |
std::cout << "After refreshing Pivot Table value of cell H8: " << val.ToUtf8() << std::endl; | |
//Save the output excel file | |
wb.Save(outputManipulatePivotTable); | |
Aspose::Cells::Cleanup(); |
Konsolenausgabe
Nachstehend finden Sie die Konsolenausgabe des obigen Beispielcodes, wenn er mit der bereitgestellten Beispieldatei für Excel ausgeführt wird.
Before refreshing Pivot Table value of cell H8: 15
After refreshing Pivot Table value of cell H8: 6