Здорово. Вам удалось реализовать этот код, хорошо? Я могу добавить больше примеров и демо, вызывающее sub, если вам это нужно.

а состоит в том, чтобы автоматизировать фильтрацию данных сводной таблицы OLAP. В поле сводки есть некоторые элементы с именем sPivotFieldName, которые мне нужно исключить. Код ниже работает довольно хорошо.

With Worksheets(sWorksheetName).PivotTables(sPivotTableName)
    With .CubeFields(sCubeFieldName)
        .Orientation = xlRowField
        .IncludeNewItemsInFilter = True
    End With
    .PivotFields(sPivotFieldName).HiddenItemsList = vSomeItemsToExclude
End With

Но проблема возникает, когда я пытаюсь изменить значение свойства поля ".Orientation" куба на xlPageField. Ошибка времени выполнения 1004 срабатывает каждый раз. Вот пример:

With Worksheets(sWorksheetName).PivotTables(sPivotTableName)
    With .CubeFields(sCubeFieldName)
        .Orientation = xlPageField
        .IncludeNewItemsInFilter = True
    End With
    .PivotFields(sPivotFieldName).HiddenItemsList = vSomeItemsToExclude
End With

Причина, по-видимому, заключается в том, что элементы полей, помещенных в поле страницы, отображаются не так, как они есть, например, когда они помещены в поле строки (их можно увидеть как заголовки строк). Или, может быть, есть что-то еще. Чего мне не хватает?

Ответы на вопрос(1)

Ваш ответ на вопрос