好的,我一直在挖掘大量資源,但我無法找到任何有關如何實現這一目標的線索。我已經挖掘了對象模型,但沒有一個屬性或方法顯示給我我需要的東西。Excel VBA獲取選定數據透視錶行的項目詳細信息
我想獲取所選行的行數據。我不想將數據提取到新工作表上,我只想獲取活動行的行標籤。然後,我將這些行數據放入一張表格中,以比提取的方法更好的格式顯示詳細信息。
爲了簡化的例子中,我的樞軸具有:
- 行標籤:Case_Name,Case_Ref(1:1的關係)
- 列標籤:狀態
- 值:呼叫的計數
理想情況下,我希望在Pivot中隱藏Case_Ref,但它是我需要爲下一步提取的關鍵。
我希望用戶在數據透視表中選擇一個項目(行),然後按我的按鈕並讓宏返回所選行的Case_Ref。
我的(失敗)到目前爲止的代碼看起來是這樣的:
Sub Pivot_Detail_By_Case__Customer_Contacts_By_Case()
'CCBC = Customer Contacts By Case
Set CCBC_PivotTable = Worksheets("Customer contacts by case").PivotTables(1)
HeaderRow = CCBC_PivotTable.RowRange.Row
RowCount = CCBC_PivotTable.RowRange.Count
'Confirm limits of row range
'Range(Cells(HeaderRow + 1, 1), Cells(HeaderRow + RowCount - 2, 1)).Select
PivotDataStartRow = HeaderRow + 1
PivotDataEndRow = HeaderRow + RowCount - 2
If ActiveCell.Row >= PivotDataStartRow And ActiveCell.Row <= PivotDataEndRow Then
ItemNumber = ActiveCell.Row - PivotDataStartRow
'SelectedField = CCBC_PivotTable.DataPivotField.PivotItems(ItemNumer)
'pvt_InnerDetail = CCBC_PivotTable.InnerDetail
'SelectedField = CCBC_PivotTable.RowFields("Case_Ref")
End If
End Sub
的ItemNumber似乎工作,但我如何從那裏得到的Case_Ref?
感謝您的幫助。
我不會添加一個答案,因爲它是一個鏈接到外部網站。這概述瞭如何引用數據透視表的不同部分:http://peltiertech.com/referencing-pivot-table-ranges-in-vba/ –