Skip to main content

How to: Move a Pivot Table

  • 2 minutes to read

To move a PivotTable report, use the PivotTable.MoveTo method. You can place a pivot table in another location in the existing worksheet or move it to a new worksheet.

Note

If a cell range where you wish to place your report is a regular range containing data, it will be overwritten without warning. But if the destination cell range contains a pivot table or table, the System.InvalidOperationException will be thrown since the pivot table cannot overlap another table or a PivotTable report.

Move a Pivot Table to Another Location in the Existing Worksheet

View Example

Worksheet worksheet = workbook.Worksheets["Report1"];
workbook.Worksheets.ActiveWorksheet = worksheet;

// Change the pivot table location.
worksheet.PivotTables["PivotTable1"].MoveTo(worksheet["A7"]);
// Refresh the pivot table.
worksheet.PivotTables["PivotTable1"].Cache.Refresh();

Move a Pivot Table to a New Worksheet

View Example

Worksheet worksheet = workbook.Worksheets["Report1"];

// Create a new worksheet.
Worksheet targetWorksheet = workbook.Worksheets.Add();

// Access the pivot table by its name in the collection
// and move it to the new worksheet.
worksheet.PivotTables["PivotTable1"].MoveTo(targetWorksheet["B2"]);
// Refresh the pivot table.
targetWorksheet.PivotTables["PivotTable1"].Cache.Refresh();

workbook.Worksheets.ActiveWorksheet = targetWorksheet;