PivotTable

PivotTable class

Descrizione riepilogativa per tabella pivot.

public class PivotTable : IDisposable

Proprietà

Nome Descrizione
AltTextDescription { get; set; } Ottiene la descrizione del testo alternativo
AltTextTitle { get; set; } Ottiene il titolo dell’altertext
AutoFormatType { get; set; } Ottiene il tipo di formato automatico della tabella pivot.
BaseFields { get; } Restituisce un oggetto PivotFields che include tutti i campi nel report tabella pivot
ColumnFields { get; } Restituisce un oggetto PivotFields che è attualmente mostrato come campi colonna.
ColumnGrand { get; set; } Indica se il rapporto tabella pivot mostra i totali complessivi per le colonne.
ColumnHeaderCaption { get; set; } Ottiene la didascalia dell’intestazione della colonna della tabella pivot.
ColumnRange { get; } Restituisce un oggetto CellArea che rappresenta l’intervallo che contiene l’area della colonna nel report di tabella pivot. Sola lettura.
CustomListSort { get; set; } Indica se considerare l’elenco personalizzato integrato quando si ordinano i dati
DataBodyRange { get; } Restituisce un oggetto CellArea che rappresenta l’intervallo che contiene l’area dati nell’elenco tra la riga di intestazione e la riga di inserimento. Sola lettura.
DataField { get; } Ottiene un oggetto PivotField che rappresenta tutti i campi di dati in una tabella pivot. Sola lettura. Sarebbe init solo quando sono presenti due o più campi di dati in DataPiovtFiels. Viene utilizzato solo per aggiungere DataPivotField alla riga/colonna della tabella pivot la zona . L’impostazione predefinita è nell’area della riga.
DataFields { get; } Ottiene un oggetto PivotField che rappresenta tutti i campi di dati in una tabella pivot. Sola lettura. Sarebbe init solo quando sono presenti due o più campi di dati in DataPiovtFiels. Viene utilizzato solo per aggiungere DataPivotField alla riga/colonna della tabella pivot la zona . L’impostazione predefinita è nell’area della riga.
DataSource { get; set; } Ottiene e imposta l’origine dati della tabella pivot.
DisplayErrorString { get; set; } Indica se il report di tabella pivot visualizza una stringa personalizzata nelle celle che contengono errori.
DisplayImmediateItems { get; set; } Indica se gli elementi nelle aree di riga e colonna sono visibili quando l’area dati della tabella pivot è vuota. Il valore predefinito è true.
DisplayNullString { get; set; } Indica se il report di tabella pivot visualizza una stringa personalizzata nelle celle che contengono valori Null.
EnableDataValueEditing { get; set; } Specifica un valore booleano che indica se l’utente è autorizzato a modificare le celle nell’area dati della tabella pivot. Abilita la modifica delle celle nell’area dei valori
EnableDrilldown { get; set; } Ottiene se il drilldown è abilitato.
EnableFieldDialog { get; set; } Indica se la finestra di dialogo Campo tabella pivot è disponibile quando l’utente fa doppio clic sul campo tabella pivot.
EnableFieldList { get; set; } Ottiene se abilitare l’elenco dei campi per la tabella pivot.
EnableWizard { get; set; } Indica se la procedura guidata tabella pivot è disponibile.
ErrorString { get; set; } Ottiene la stringa visualizzata nelle celle che contengono errori quando la proprietà DisplayErrorString è true. Il valore predefinito è una stringa vuota.
ExternalConnectionDataSource { get; } Ottiene l’origine dati della connessione esterna.
FieldListSortAscending { get; set; } Specifica un valore booleano che indica se i campi della tabella pivot sono ordinati in un ordine non predefinito nell’elenco dei campi.
GrandTotalName { get; set; } Restituisce l’etichetta della stringa di testo visualizzata nella colonna o nell’intestazione della riga del totale generale. Il valore predefinito è la stringa “Totale generale”.
HasBlankRows { get; set; } Indica se aggiungere righe vuote. Questa proprietà si applica solo ai tipi di formato automatico della tabella pivot che devono aggiungere righe vuote.
Indent { get; set; } Specifica l’incremento di rientro per l’asse compatto e può essere utilizzato per impostare il layout del report su Compact Form.
IsAutoFormat { get; set; } Indica se il report della tabella pivot viene formattato automaticamente. Casella di controllo “formattazione automatica tabella” che è nell’opzione pivottable per Excel 2003 Casella di controllo “adatta larghezza colonna all’aggiornamento” che si trova nella tabella pivot Opzioni: Formato layout per Excel 2007
IsExcel2003Compatible { get; set; } Specifica se la tabella pivot è compatibile con Excel2003 durante l’aggiornamento della tabella pivot, se true, una stringa deve essere minore o uguale a 255 caratteri, quindi se la stringa è maggiore di 255 caratteri, verrà troncata. se false, una stringa non avrà la suddetta limitazione. Il valore predefinito è true.
IsGridDropZones { get; set; } Indica se il report di tabella pivot visualizza il layout pivottable classico. (abilita il trascinamento dei campi nella griglia)
IsMultipleFieldFilters { get; set; } Specifica un valore booleano che indica se i campi di una tabella pivot possono avere più filtri impostati su di essi.
IsSelected { get; set; } Indica se la tabella pivot è selezionata.
ItemPrintTitles { get; set; } Un bit che specifica se le didascalie degli elementi pivot sull’asse della riga vengono ripetute su ogni pagina stampata per i campi pivot in forma tabellare.
ManualUpdate { get; set; } Indica se il report della tabella pivot viene ricalcolato solo su richiesta dell’utente.
MergeLabels { get; set; } Indica se le etichette dell’elemento della riga esterna, dell’elemento della colonna, del subtotale, e del totale generale del rapporto tabella pivot specificati utilizzano celle unite.
MissingItemsLimit { get; set; } Specifica un valore booleano che indica se i campi di una tabella pivot possono avere più filtri impostati su di essi.
Name { get; set; } Ottiene il nome della tabella pivot
NullString { get; set; } Ottiene la stringa visualizzata nelle celle che contengono valori Null quando la proprietà DisplayNullString è true. Il valore predefinito è una stringa vuota.
PageFieldOrder { get; set; } Ottiene l’ordine in cui i campi della pagina vengono aggiunti al layout del report della tabella pivot.
PageFields { get; } Restituisce un oggetto PivotFields che è attualmente mostrato come campi di pagina.
PageFieldWrapCount { get; set; } Ottiene il numero di campi di pagina in ogni colonna o riga nel report di tabella pivot.
PivotFilters { get; } Restituisce un oggetto PivotFilterCollection.
PivotFormatConditions { get; } Ottiene le condizioni di formato della tabella pivot.
PivotTableStyleName { get; set; } Ottiene e imposta il nome dello stile pivottable.
PivotTableStyleType { get; set; } Ottiene e imposta lo stile della tabella pivot integrato.
PreserveFormatting { get; set; } Indica se la formattazione viene conservata quando la tabella pivot viene aggiornata o ricalcolata.
PrintDrill { get; set; } Specifica un valore booleano che indica se devono essere stampati gli indicatori di drill. stampa pulsanti di espansione/compressione quando visualizzati su pivottable.
PrintTitles { get; set; } Indica se i titoli di stampa per il foglio di lavoro sono impostati in base a sul report della tabella pivot. Il valore predefinito è false.
RefreshDataFlag { get; set; } Indica se Aggiorna i dati o meno.
RefreshDataOnOpeningFile { get; set; } Indica se Aggiorna i dati all’apertura del file.
RefreshDate { get; } Ottiene la data dell’ultimo aggiornamento della tabella pivot.
RefreshedByWho { get; } Ottiene il nome dell’utente che ha aggiornato per ultimo la tabella pivot
RowFields { get; } Restituisce un oggetto PivotFields che è attualmente mostrato come campi riga.
RowGrand { get; set; } Indica se il rapporto tabella pivot mostra i totali complessivi per le righe.
RowHeaderCaption { get; set; } Ottiene la didascalia dell’intestazione di riga della tabella pivot.
RowRange { get; } Restituisce un oggetto CellArea che rappresenta l’intervallo che contiene l’area della riga nel report di tabella pivot. Sola lettura.
SaveData { get; set; } Indica se i dati per il report della tabella pivot vengono salvati con la cartella di lavoro.
ShowDataTips { get; set; } Specifica un valore booleano che indica se le descrizioni comandi devono essere visualizzate per le celle di dati della tabella pivot.
ShowDrill { get; set; } Ottiene se vengono visualizzati i pulsanti di espansione/compressione.
ShowEmptyCol { get; set; } Specifica un valore booleano che indica se includere colonne vuote nella tabella
ShowEmptyRow { get; set; } Specifica un valore booleano che indica se includere righe vuote nella tabella.
ShowMemberPropertyTips { get; set; } Specifica un valore booleano che indica se le informazioni sulla proprietà del membro devono essere omesse dalle descrizioni comandi della tabella pivot.
ShowPivotStyleColumnHeader { get; set; } Indica se l’intestazione della colonna nella tabella pivot deve avere lo stile applicato.
ShowPivotStyleColumnStripes { get; set; } Indica se è stata applicata la formattazione della striscia di colonna.
ShowPivotStyleLastColumn { get; set; } Indica se è stata applicata la formattazione della striscia di colonna.
ShowPivotStyleRowHeader { get; set; } Indica se l’intestazione di riga nella tabella pivot deve avere lo stile applicato.
ShowPivotStyleRowStripes { get; set; } Indica se è stata applicata la formattazione della striscia di riga.
ShowRowHeaderCaption { get; set; } Indica se la didascalia dell’intestazione di riga è mostrata nel report della tabella pivot Indica se Visualizza le didascalie dei campi e i filtri a discesa
ShowValuesRow { get; set; } Specifica un valore booleano che indica se mostrare i valori riga. mostrare i valori riga
SubtotalHiddenPageItems { get; set; } Indica se gli elementi dei campi pagina nascosti nel rapporto tabella pivot sono inclusi nei totali parziali di righe e colonne, nei totali dei blocchi e nei totali complessivi. Il valore predefinito è False.
TableRange1 { get; } Restituisce un oggetto CellArea che rappresenta l’intervallo contenente l’intero report di tabella pivot, ma non include i campi della pagina. Sola lettura.
TableRange2 { get; } Restituisce un oggetto CellArea che rappresenta l’intervallo contenente l’intero report di tabella pivot, include i campi della pagina. Sola lettura.
Tag { get; set; } Ottiene una stringa salvata con il rapporto tabella pivot.

Metodi

Nome Descrizione
AddCalculatedField(string, string) Aggiunge un campo calcolato al campo pivot e trascinalo nell’area dati.
AddCalculatedField(string, string, bool) Aggiunge un campo calcolato al campo pivot.
AddFieldToArea(PivotFieldType, int) Aggiunge il campo all’area specifica.
AddFieldToArea(PivotFieldType, PivotField) Aggiunge il campo all’area specifica.
AddFieldToArea(PivotFieldType, string) Aggiunge il campo all’area specifica.
CalculateData() Calcola i dati di pivottable nelle celle.
CalculateRange() Calcola l’intervallo della tabella pivot.
ChangeDataSource(string[]) Imposta i dati di origine della tabella pivot. Foglio1!$A$1:$C$3
ClearData() Cancella i dati e la formattazione della tabella pivot
CopyStyle(PivotTable) Copia lo stile denominato da un’altra tabella pivot.
Dispose() Esegue attività definite dall’applicazione associate alla liberazione, rilascio o ripristino di risorse non gestite.
Fields(PivotFieldType) Ottiene i campi specifici in base al tipo di campo.
Format(int, int, Style) Formatta la cella nell’area pivottable
FormatAll(Style) Formatta tutta la cella nell’area pivottable
FormatRow(int, Style) Formatta i dati della riga nell’area pivottable
GetCellByDisplayName(string) Ottiene l’oggetto Cell da DisplayName di PivotField
GetChildren() Ottiene le tabelle pivot figli che utilizzano i dati di questa tabella pivot come origine dati.
GetHorizontalBreaks() ottieni l’elenco dell’indice delle righe della tabella pivot di interruzioni di pagina orizzontali
GetSource() Ottieni i dati di origine di pivottable.
Move(string) Sposta la tabella pivot in una posizione diversa nel foglio di lavoro.
Move(int, int) Sposta la tabella pivot in una posizione diversa nel foglio di lavoro.
RefreshData() Aggiorna i dati e le impostazioni di pivottable dalla sua origine dati.
RemoveField(PivotFieldType, int) Rimuove un campo da un’area di campo specifica
RemoveField(PivotFieldType, PivotField) Rimuovi campo dall’area campo specifica
RemoveField(PivotFieldType, string) Rimuove un campo da un’area di campo specifica
SetAutoGroupField(int) Imposta il gruppo di campi automatici in base alla tabella pivot.
SetAutoGroupField(PivotField) Imposta il gruppo di campi automatici in base alla tabella pivot.
SetManualGroupField(int, DateTime, DateTime, ArrayList, int) Imposta il gruppo di campi manuale dalla tabella pivot.
SetManualGroupField(int, double, double, ArrayList, double) Imposta il gruppo di campi manuale dalla tabella pivot.
SetManualGroupField(PivotField, DateTime, DateTime, ArrayList, int) Imposta il gruppo di campi manuale dalla tabella pivot.
SetManualGroupField(PivotField, double, double, ArrayList, double) Imposta il gruppo di campi manuale dalla tabella pivot.
SetUngroup(int) Imposta la separazione dalla tabella pivot
SetUngroup(PivotField) Imposta la separazione dalla tabella pivot
ShowInCompactForm() Dispone la tabella pivot in forma compatta.
ShowInOutlineForm() Dispone la tabella pivot sotto forma di struttura.
ShowInTabularForm() Dispone la tabella pivot in forma tabellare.
ShowReportFilterPage(PivotField) Mostra tutte le pagine dei filtri dei report in base a PivotField, il PivotField deve trovarsi nei PageField.
ShowReportFilterPageByIndex(int) Mostra tutte le pagine dei filtri dei report in base all’indice di posizione nei PageFields
ShowReportFilterPageByName(string) Mostra tutte le pagine dei filtri dei report in base al nome di PivotField, il PivotField deve trovarsi nei PageField.

Esempi


[C#]

Workbook book = new Workbook();
Worksheet sheet = book.Worksheets[0];
Cells cells = sheet.Cells;
cells[0, 0].Value = "fruit";
cells[1, 0].Value = "grape";
cells[2, 0].Value = "blueberry";
cells[3, 0].Value = "kiwi";
cells[4, 0].Value = "cherry";
cells[5, 0].Value = "grape";
cells[6, 0].Value = "blueberry";
cells[7, 0].Value = "kiwi";
cells[8, 0].Value = "cherry";

cells[0, 1].Value = "year";
cells[1, 1].Value = 2020;
cells[2, 1].Value = 2020;
cells[3, 1].Value = 2020;
cells[4, 1].Value = 2020;
cells[5, 1].Value = 2021;
cells[6, 1].Value = 2021;
cells[7, 1].Value = 2021;
cells[8, 1].Value = 2021;

cells[0, 2].Value = "amount";
cells[1, 2].Value = 50;
cells[2, 2].Value = 60;
cells[3, 2].Value = 70;
cells[4, 2].Value = 80;
cells[5, 2].Value = 90;
cells[6, 2].Value = 100;
cells[7, 2].Value = 110;
cells[8, 2].Value = 120;

PivotTableCollection pivots = sheet.PivotTables;

int pivotIndex = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable");
PivotTable pivot = pivots[pivotIndex];
pivot.AddFieldToArea(PivotFieldType.Row, "fruit");
pivot.AddFieldToArea(PivotFieldType.Column, "year");
pivot.AddFieldToArea(PivotFieldType.Data, "amount");

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10;

//Modifica gli attributi di PivotField
PivotField rowField = pivot.RowFields[0];
rowField.DisplayName = "custom display name";

//Aggiungi filtro pivot
int index = pivot.PivotFilters.Add(0, PivotFilterType.Count);
PivotFilter filter = pivot.PivotFilters[index];
filter.AutoFilter.FilterTop10(0, false, false, 2);

//Aggiungi PivotFormatCondition
int formatIndex = pivot.PivotFormatConditions.Add();
PivotFormatCondition pfc = pivot.PivotFormatConditions[formatIndex];
FormatConditionCollection fcc = pfc.FormatConditions;
fcc.AddArea(pivot.DataBodyRange);
int idx = fcc.AddCondition(FormatConditionType.CellValue);
FormatCondition fc = fcc[idx];
fc.Formula1 = "100";
fc.Operator = OperatorType.GreaterOrEqual;
fc.Style.BackgroundColor = Color.Red;

pivot.RefreshData();
pivot.CalculateData();

//fai i tuoi affari

book.Save("out.xlsx");

[Visual Basic]

Dim book As Workbook = New Workbook()
Dim sheet As Worksheet = book.Worksheets(0)
Dim cells As Cells = sheet.Cells

cells(0, 0).Value = "fruit"
cells(1, 0).Value = "grape"
cells(2, 0).Value = "blueberry"
cells(3, 0).Value = "kiwi"
cells(4, 0).Value = "cherry"
cells(5, 0).Value = "grape"
cells(6, 0).Value = "blueberry"
cells(7, 0).Value = "kiwi"
cells(8, 0).Value = "cherry"

cells(0, 1).Value = "year"
cells(1, 1).Value = 2020
cells(2, 1).Value = 2020
cells(3, 1).Value = 2020
cells(4, 1).Value = 2020
cells(5, 1).Value = 2021
cells(6, 1).Value = 2021
cells(7, 1).Value = 2021
cells(8, 1).Value = 2021

cells(0, 2).Value = "amount"
cells(1, 2).Value = 50
cells(2, 2).Value = 60
cells(3, 2).Value = 70
cells(4, 2).Value = 80
cells(5, 2).Value = 90
cells(6, 2).Value = 100
cells(7, 2).Value = 110
cells(8, 2).Value = 120

Dim pivots As PivotTableCollection = sheet.PivotTables
Dim pivotIndex As Int32 = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable")
Dim pivot As PivotTable = pivots(pivotIndex)
pivot.AddFieldToArea(PivotFieldType.Row, "fruit")
Pivot.AddFieldToArea(PivotFieldType.Column, "year")
Pivot.AddFieldToArea(PivotFieldType.Data, "amount")

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10

'Change PivotField's attributes
Dim rowField As PivotField = pivot.RowFields(0)
rowField.DisplayName = "custom display name"

'Aggiungi filtro pivot
Dim filterIndex As Int32 = pivot.PivotFilters.Add(0, PivotFilterType.Count)
Dim filter As PivotFilter = pivot.PivotFilters(filterIndex)
filter.AutoFilter.FilterTop10(0, False, False, 2)

'Aggiungi PivotFormatCondition
Dim formatIndex As Int32 = pivot.PivotFormatConditions.Add()
Dim pfc As PivotFormatCondition = pivot.PivotFormatConditions(formatIndex)
Dim fcc As FormatConditionCollection = pfc.FormatConditions
fcc.AddArea(pivot.DataBodyRange)
Dim idx As Int32 = fcc.AddCondition(FormatConditionType.CellValue)
Dim fc As FormatCondition = fcc(idx)
fc.Formula1 = "100"
fc.Operator = OperatorType.GreaterOrEqual
fc.Style.BackgroundColor = Color.Red

pivot.RefreshData()
pivot.CalculateData()

book.Save("out_vb.xlsx")

Guarda anche