office交流網--QQ交流群號

Access培訓群:792054000         Excel免費交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

Wps的VBA中的PivotTable 透視錶對象的GetPivotData函數方法取不到值的問題及解決辦法

2020-12-22 08:00:00
zstmtony
原創
5649

通過多天的嚐試,Wps的VBA中的PivotTable對象的GetPivotData函數方法取不到值

如下麵的的代碼:

ActiveSheet.PivotTables(1).GetPivotData("傢庭電氣化電量")

或加上條件的代碼:

ActiveSheet.PivotTables(1).GetPivotData("傢庭電氣化電量","縣局名","中山供電局")


這些代碼在Excel能正常取到透視錶指定字段的閤計值,但Wps vba中就會失效,不起作用,返迴的是空值


解決辦法 
在當前工作錶中先用VBA 先設置一箇函數公式  ,如 設置 A1單元格的公式  爲這箇 GetPivotData 函數
然後VBA再取這箇單元格的函數公式 之後的值 (經過 一箇中轉步驟 )就可以瞭
xlsSheetOld.range("A1").Value = "=GETPIVOTDATA(""傢庭電氣化電量"",$B$3,""分縣局"",""" & xlsSheet.range("A" & i).Value & """)"
 
 
      If InStr(xlsSheetOld.range("A1").Text, "錯誤") = 0 And InStr(xlsSheetOld.range("A1").Text, "REF") = 0 Then xlsSheet.range("H" & i).Value = xlsSheetOld.range("A1").Value 


這樣就可以瞭

卽Wps的函數公式 GETPIVOTDATA 是有效的
但pivottable對象的方法 GETPIVOTDATA  是無效的

隻能使用上麵的方法中轉一下

分享