2014-10-28 16 views
3

내 궁극적 인 목표는 피벗 테이블 결과로 폼 TreeView를 채우는 것입니다. 즉, 부모 노드와 자식 노드를 갖게됩니다.Excel 피벗 테이블의 보조 (자식) 필드를 어떻게 반복합니까?

이의 말을하자 나는이 (테이블에서) 다음 피벗 테이블 결과

FirstNames 

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

언제 루프 myPivotTable.PivotFields("FirstNames").PivotItems을 통해, 나는 루프 "빌", "밥", "찰스", "제임스"을 통해, "재커리". 이것은 내 부모 노드를 제공하지만 내 자식 노드도 필요합니다. (e.g. "Charles Jameson", "Charles Johnson", and "Charles Smith").

어떻게 자식 필드를 반복 할 수 있습니까?

답변

0

자식 노드는 반드시 "자식 노드"로 간주되지는 않지만 자신의 이름을가집니다. 따라서 "PivotFields ("FirstNames ") 부분을 변경하면됩니다. 하지만 당신이 그들이 피벗의 결과로 어떻게 연관되어 있는지와 관련하여 그들을 원한다고 생각합니다.

피벗 테이블에 의존하는 대신 필요한 방식으로 데이터와 상호 작용하는 것이 더 쉬울 수 있습니다. 당신을 가정

0

는 다음과 같이 있습니다

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