Export (0) Print
Expand All
Expand Minimize

Workbook.PivotTableWizard Method (2007 System)

Creates a PivotTable object.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel.v9.0 (in Microsoft.Office.Tools.Excel.v9.0.dll)

public void PivotTableWizard(
	Object SourceType,
	Object SourceData,
	Object TableDestination,
	Object TableName,
	Object RowGrand,
	Object ColumnGrand,
	Object SaveData,
	Object HasAutoFormat,
	Object AutoPage,
	Object Reserved,
	Object BackgroundQuery,
	Object OptimizeCache,
	Object PageFieldOrder,
	Object PageFieldWrapCount,
	Object ReadData,
	Object Connection
)

Parameters

SourceType
Type: System.Object

An XlPivotTableSourceType value. The source of the report data.

SourceData
Type: System.Object

The data for the new report. Can be a Range object, an array of ranges, or a text constant that represents the name of another report. For an external database, SourceData is an array of strings containing the SQL query string, where each element is up to 255 characters in length. You should use the Connection argument to specify the ODBC connection string. For compatibility with earlier versions of Excel, SourceData can be a two-element array. The first element is the connection string specifying the ODBC source for the data. The second element is the SQL query string used to get the data. If you specify SourceData, you must also specify SourceType. If the active cell is inside the SourceData range, you must specify TableDestination as well.

TableDestination
Type: System.Object

A Range object specifying where the report should be placed on the worksheet. If this argument is omitted, the report is placed at the active cell.

TableName
Type: System.Object

The name of the new report.

RowGrand
Type: System.Object

true to show grand totals for rows in the report.

ColumnGrand
Type: System.Object

true to show grand totals for columns in the report.

SaveData
Type: System.Object

true to save data with the report; false to save only the report definition.

HasAutoFormat
Type: System.Object

true to have Microsoft Office Excel automatically format the report when it is refreshed or when fields are moved.

AutoPage
Type: System.Object

Valid only if SourceType is xlConsolidation. true to have Excel create a page field for the consolidation. If AutoPage is false, you must create the page field or fields.

Reserved
Type: System.Object

Not used by Excel.

BackgroundQuery
Type: System.Object

true to have Excel perform queries for the report asynchronously (in the background). The default value is false.

OptimizeCache
Type: System.Object

true to optimize the PivotTable cache when it is constructed. The default value is false.

PageFieldOrder
Type: System.Object

The order in which page fields are added to the PivotTable report’s layout. Can be one of the following XlOrder constants: xlDownThenOver or xlOverThenDown. The default value is xlDownThenOver.

PageFieldWrapCount
Type: System.Object

The number of page fields in each column or row in the PivotTable report. The default value is 0 (zero).

ReadData
Type: System.Object

true to create a PivotTable cache that contains all records from the external database; this cache can be very large. If ReadData is false, you can set some of the fields as server-based page fields before the data is actually read.

Connection
Type: System.Object

A string that contains ODBC settings that allow Excel to connect to an ODBC data source. The connection string has the form "ODBC;<connection string>". This argument overrides any previous setting for the PivotCache object’s Connection property.

This method does not display the PivotTable Wizard. This method is not available for OLE DB data sources. Use the Add(Object, Object, Object, Object) method to add a PivotTable cache, and then create a PivotTable report based on the cache.

Optional Parameters

For information on optional parameters, see The Variable missing and Optional Parameters in Office Solutions.

The following code example uses the PivotTableWizard method to create a PivotTable report in Sheet2 based on the range of cells from A1 to C4 in Sheet1.

This example is for a document-level customization.

private void CreatePivotTable()
{
    Globals.Sheet1.Range["A1", missing].Value2 = "Date";
    Globals.Sheet1.Range["A2", missing].Value2 = "March 1";
    Globals.Sheet1.Range["A3", missing].Value2 = "March 8";
    Globals.Sheet1.Range["A4", missing].Value2 = "March 15";

    Globals.Sheet1.Range["B1", missing].Value2 = "Customer";
    Globals.Sheet1.Range["B2", missing].Value2 = "Smith";
    Globals.Sheet1.Range["B3", missing].Value2 = "Jones";
    Globals.Sheet1.Range["B4", missing].Value2 = "James";

    Globals.Sheet1.Range["C1", missing].Value2 = "Sales";
    Globals.Sheet1.Range["C2", missing].Value2 = "23";
    Globals.Sheet1.Range["C3", missing].Value2 = "17";
    Globals.Sheet1.Range["C4", missing].Value2 = "39";

    this.PivotTableWizard(
        Excel.XlPivotTableSourceType.xlDatabase,
        Globals.Sheet1.Range["A1", "C4"],
        Globals.Sheet2.Range["A1", missing], "PivotTable1",
        false, false, true, false, missing, missing,
        false, false, Excel.XlOrder.xlDownThenOver, missing,
        missing, missing);
}

Community Additions

ADD
Show:
© 2014 Microsoft