Excel.PivotTableCollection class
Represents a collection of all the PivotTables that are part of the workbook or worksheet.
- Extends
Remarks
Properties
context | The request context associated with the object. This connects the add-in's process to the Office host application's process. |
items | Gets the loaded child items in this collection. |
Methods
add(name, source, destination) | Add a PivotTable based on the specified source data and insert it at the top-left cell of the destination range. |
get |
Gets the number of pivot tables in the collection. |
get |
Gets a PivotTable by name. |
get |
Gets a PivotTable by name. If the PivotTable does not exist, then this method returns an object with its |
load(options) | Queues up a command to load the specified properties of the object. You must call |
load(property |
Queues up a command to load the specified properties of the object. You must call |
load(property |
Queues up a command to load the specified properties of the object. You must call |
refresh |
Refreshes all the pivot tables in the collection. |
toJSON() | Overrides the JavaScript |
Property Details
context
The request context associated with the object. This connects the add-in's process to the Office host application's process.
context: RequestContext;
Property Value
items
Gets the loaded child items in this collection.
readonly items: Excel.PivotTable[];
Property Value
Method Details
add(name, source, destination)
Add a PivotTable based on the specified source data and insert it at the top-left cell of the destination range.
add(name: string, source: Range | string | Table, destination: Range | string): Excel.PivotTable;
Parameters
- name
-
string
The name of the new PivotTable.
- source
-
Excel.Range | string | Excel.Table
The source data for the new PivotTable, this can either be a range (or string address including the worksheet name) or a table.
- destination
-
Excel.Range | string
The cell in the upper-left corner of the PivotTable report's destination range (the range on the worksheet where the resulting report will be placed).
Returns
Returns the newly inserted PivotTable.
Remarks
Examples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-create-and-modify.yaml
await Excel.run(async (context) => {
const rangeToAnalyze = context.workbook.worksheets.getItem("Data").getRange("A1:E21");
const rangeToPlacePivot = context.workbook.worksheets.getItem("Pivot").getRange("A2");
context.workbook.worksheets.getItem("Pivot").pivotTables.add("Farm Sales", rangeToAnalyze, rangeToPlacePivot);
await context.sync();
});
getCount()
Gets the number of pivot tables in the collection.
getCount(): OfficeExtension.ClientResult<number>;
Returns
OfficeExtension.ClientResult<number>
Remarks
getItem(name)
Gets a PivotTable by name.
getItem(name: string): Excel.PivotTable;
Parameters
- name
-
string
Name of the PivotTable to be retrieved.
Returns
Remarks
Examples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-refresh.yaml
// This function refreshes the "Farm Sales" PivotTable,
// which updates the PivotTable with changes made to the source table.
await Excel.run(async (context) => {
const pivotTable = context.workbook.pivotTables.getItem("Farm Sales");
pivotTable.refresh();
await context.sync();
});
getItemOrNullObject(name)
Gets a PivotTable by name. If the PivotTable does not exist, then this method returns an object with its isNullObject
property set to true
. For further information, see *OrNullObject methods and properties.
getItemOrNullObject(name: string): Excel.PivotTable;
Parameters
- name
-
string
Name of the PivotTable to be retrieved.
Returns
Remarks
load(options)
Queues up a command to load the specified properties of the object. You must call context.sync()
before reading the properties.
load(options?: Excel.Interfaces.PivotTableCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.PivotTableCollection;
Parameters
Provides options for which properties of the object to load.
Returns
load(propertyNames)
Queues up a command to load the specified properties of the object. You must call context.sync()
before reading the properties.
load(propertyNames?: string | string[]): Excel.PivotTableCollection;
Parameters
- propertyNames
-
string | string[]
A comma-delimited string or an array of strings that specify the properties to load.
Returns
load(propertyNamesAndPaths)
Queues up a command to load the specified properties of the object. You must call context.sync()
before reading the properties.
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.PivotTableCollection;
Parameters
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select
is a comma-delimited string that specifies the properties to load, and propertyNamesAndPaths.expand
is a comma-delimited string that specifies the navigation properties to load.
Returns
refreshAll()
Refreshes all the pivot tables in the collection.
refreshAll(): void;
Returns
void
Remarks
toJSON()
Overrides the JavaScript toJSON()
method in order to provide more useful output when an API object is passed to JSON.stringify()
. (JSON.stringify
, in turn, calls the toJSON
method of the object that is passed to it.) Whereas the original Excel.PivotTableCollection
object is an API object, the toJSON
method returns a plain JavaScript object (typed as Excel.Interfaces.PivotTableCollectionData
) that contains an "items" array with shallow copies of any loaded properties from the collection's items.
toJSON(): Excel.Interfaces.PivotTableCollectionData;
Returns
Office Add-ins