Макрос «Выбрать все поля» в сводной таблице добавлен в модель данных - PullRequest
0 голосов
/ 12 сентября 2018

Я работаю над сводной таблицей в Excel 2013 со многими столбцами значений (более 100), которые должны быть активными.Я попытался адаптировать макрос, который нашел в Интернете, выбрав все оставшиеся поля в качестве значений.Тем не менее, я работаю с сводной таблицей, которая была добавлена ​​в модель данных (не в Power Pivot), поэтому этот макрос не работает.

Я работал над макросом ниже:

Sub AllFieldInPivotAsValues()

Dim pt As PivotTable
Dim I As Long
For Each pt In ActiveSheet.PivotTables
    For I = 1 To pt.PivotFields.Count
        With pt.PivotFields(I)
          If .Orientation = 0 Then .Orientation = xlDataField
        End With
    Next
Next
End Sub

Я также попытался записать макрос и заметил, что путь к столбцу расширяется при использовании сводной таблицы модели данных.Это что-то вроде:

ActiveSheet.PivotTables("PivotTable5").CubeFields.GetMeasure _
    "[Spends].[201512]", xlSum, "Sum of 201512 2"
ActiveSheet.PivotTables("PivotTable5").AddDataField ActiveSheet.PivotTables( _
    "PivotTable5").CubeFields("[Measures].[Sum of 201512 2]"), "Sum of 201512"

И до сих пор это слишком сложно для меня.Затем, мне нужен ваш совет, чтобы создать цикл, который будет работать с сводными таблицами на основе модели данных.Заранее спасибо за помощь.

...