2014-01-09 77 views
5

數據透視表允許您在一個值「鑽」進了一組通過雙擊的數據,或者通過在現場並選擇「顯示詳細信息」右擊:獲取源範圍爲PivotItem

enter image description here

我的問題是,VBA(Office 2010)中是否有任何方法可以捕獲這些數據?我查看了PivotItem,PivotField,PivotTablePivotCache對象的文檔,但我沒有看到任何會返回數據或字段單元格下的詳細數據的內容。這可以一步完成嗎?是否有多個步驟可用於執行此操作?

回答

1

不,不幸的是答案。雖然您有權訪問PivotCache對象,但沒有編程訪問數據的權限。但是,只要已刷新,您就可以返回與緩存匹配的源數據。我在過濾源數據方面做了一系列的文章,因爲我不喜歡在深入分析時創建新的工作表。

http://www.dailydoseofexcel.com/archives/2010/11/08/filter-pivot-table-source-data/ http://www.dailydoseofexcel.com/archives/2010/11/09/filter-pivot-table-source-data-ii/ http://dailydoseofexcel.com/archives/2010/11/10/filter-pivot-table-source-data-calling-procedures/

最終我的實驗與分組數據,尤其是日期失敗。如果您沒有分組數據或不適用於您的情況,則可以使用Range對象

Application.Evaluate(Application.ConvertFormula(pt.SourceData, xlR1C1, xlA1)) 

其中pt是數據透視表對象。