VBA GetPivotData - PullRequest
       8

VBA GetPivotData

0 голосов
/ 06 февраля 2020

Я пытаюсь решить проблему, когда у меня есть простая сводная таблица с одной строкой с именем «Autonumber» и другими столбцами с именами Q1Data, Q2Data и др. c. Я хочу сделать некоторую простую обработку данных, пройдя по каждому столбцу, удалив что-либо со значением 20, а затем усреднив каждый столбец перед переходом к следующей строке. Я хочу использовать GetPivotData, чтобы выбрать весь мой набор данных (или каждый столбец), но не могу заставить его работать. Может кто-нибудь помочь? Вот код, и он дает мне ошибку времени выполнения 1004 (приложение определено или объектно определена ошибка) в операторе debug.print.

Dim pt As PivotTable
Dim LastRowSharepoint As Integer
Dim LastColumnSharepoint As Integer
Dim AvgRowCount As Integer
Dim TotalVal As Integer
Dim AvgVal As Single
Dim TempVar() As Variant

Set pt = ActiveSheet.PivotTables(1)

LastRowSharepoint = pt.RowRange.Count
LastColumnSharepoint = pt.ColumnRange.Count

For a = 1 To LastColumnSharepoint
    For b = 1 To LastRowSharepoint
        Debug.Print pt.GetPivotData("AutoNumber", "Q1Data")
        If TempVar(b, a) <> "20" Then
            AvgRowCount = AvgRowCount + 1
            TotalVal = TotalVal + SharepointTable.Range(b, a)
        End If
    Next b
    AvgVal = TotalVal / AvgRowCount
Next a

End Sub
...