如何通过Excel数据透视表的次要(子)字段循环?

我的最终目标是填充一个表格TreeView与我的数据透视表结果,这意味着我将有父节点和子节点。

比方说,我有以下数据透视表结果(从一个表)

FirstNames [+] Bill [+] Bob [-] Charles Charles Jameson Charles Johnson Charles Smith [+] James [+] Zachary 

当我通过myPivotTable.PivotFields("FirstNames").PivotItems循环时,我遍历“Bill”,“Bob”,“Charles”,“James”,“Zachary”。 这给了我我的父节点,但我也希望我的孩子节点(eg "Charles Jameson", "Charles Johnson", and "Charles Smith").

我怎样才能循环通过子领域?

孩子节点有自己的名字,不一定被认为是“孩子节点”,他们是同龄人。 所以你只需要改变“PivotFields(”FirstNames“)”部分来获得这些。 但是,我想你想让他们在他们如何关联作为枢纽的结果的上下文。

以您需要的方式与数据交互可能更容易,而不是依靠数据透视表。

假设你有这样的事情:

 For Each pvtField in myPivotTable.PivotFields("FirstNames").PivotItems 

你应该可以使用

 For Each pvtField in myPivotTable.PivotFields("FirstNames").PivotItems If pvtField.Orientation = xlRowField Then For Each pvtField2 in myPivotTable.PivotFields(pvtField.Name).PivotItems