ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   C# Add-in and PivotTables (https://www.excelbanter.com/excel-programming/436319-c-add-pivottables.html)

James Igoe

C# Add-in and PivotTables
 
I am working on a C# add-in that modifies pivot tables. I have done this
work in VBA, and the object model seems straightforward, e.g.,
PivotTable-PivotFields-PivotItems, but I can not get the object for
PivotItems, or iterate through the items. Do I need something other than
PivotItems?

Code for PivotFields, that works:

IExcel.PivotFields pvtfs =
(IExcel.PivotFields)pvtTable.get_PageFields(Missin g.Value);
foreach (IExcel.PivotField pvtf in pvtfs)
{

Code for the does not work, and PivotItems shows no values (as in count):

IExcel.PivotItems pvtis =
(IExcel.PivotItems)pvtf.PivotItems(Missing.Value);
foreach (IExcel.PivotItem pvti in pvtis)
{



Similarly, even though I can iterate the CubeFields, I can not edit
some parameters, although I can retrieve its value, e.g., trying to
modify EnablemultiplePageitems throws an error:

IExcel.CubeFields cbfs = (IExcel.CubeFields)pvtTable.CubeFields;
foreach (IExcel.CubeField cbf in cbfs)
{
string cbfname = cbf.Name;
bool cbfMultiPage = cbf.EnableMultiplePageItems;

if (cbfname == dimensionName & cbfMultiPage == false)
{

cbf.EnableMultiplePageItems = true;



All times are GMT +1. The time now is 01:19 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com