1
我的任務是用幾十個數據透視表重組一個極其凌亂的excel文件。重組的部分內容將涉及將數據透視表移到同一張表上,並轉移到新表上,以便爲他們創造出隨時間增長的空間。然而,使用getpivotdata()函數的透視表引用被硬編碼到數據透視表的位置。通過名稱引用數據透視表Excel 2010
我一直試圖通過使用自定義函數來接受數據透視表的名稱並返回其位置,以便在getpivotdata()函數內使用,以便在不使用引用的情況下移動透視表到桌上休息。我試着返回一個字符串版本的位置和一個指定位置的範圍對象,但這兩個都給了我參考錯誤。我最成功的功能至今已返回數據透視表對象,雖然它並沒有給我一個引用錯誤,它只返回0的數據,無論我怎麼努力
下面是當前的代碼:
Public Function pivotNameToLoc(PTName As String) As PivotTable
Dim WS As Worksheet, PT As PivotTable
For Each WS In ActiveWorkbook.Worksheets
For Each PT In WS.PivotTables
If PT.Name = PTName Then
pivotNameToLoc = PivotTable
Exit Function
End If
Next PT
Next WS
End Function
這裏的功能是如何被稱爲單元格的公式
=GETPIVOTDATA("Data field",pivotNameToLoc("Name of table"),"other","fields")
謝謝!我以前使用範圍對象的嘗試使用了我認爲錯誤的TableRange屬性。 – Wright95