Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Сводная таблица. Ошибка при скрытии поля.
 
После двух дней ковыряния нашел решение. Правда, оно в стиле Microsoft :)  
Я записал еще один макрос, но скрывал поле в таблице не drag-and-drop-ом, а через контекстное меню с помощью команды "Скрыть". И вместо текста  
 
   ActiveSheet.PivotTables("СводнаяТаблица1").PivotFields( _  
       "Сумма по полю Рентабельность").Orientation = xlHidden  
 
обнаружил в записанном макросе текст    
 
   Range("A14").Select  
   Selection.Delete  
 
то есть производится операция удаления в ячейке, содержащей заголовок поля.  
 
Чтобы было более универсально, я подкорректировал текст так:  
    ActiveSheet.PivotTables("СводнаяТаблица1").PivotFields( _  
       "Сумма по полю Рентабельность").LabelRange.Cells(1, 1).Delete  
 
Ссылка на .Cells(1, 1) необходима, так как при наличии в сводной таблице более одного поля данных, .LabelRange возвращает массив ячеек, в которых присутствует название поля, а несколько ячеек таким образом Excel удалять не позволяет. Если же выбрать первую из них, то все будет Ок.  
 
Вывод: видимо, есть некий глюк в реализации сводных таблиц, связанный с различными механизмами обработки полей данных и вычисляемых полей. И через GUI работа с вычисляемыми полями организована корректно, а через Properties - нет. В Help-е ничего по этому поводу этой особенности не сказано.  
 
Файл с результатом прилагаю.
Сводная таблица. Ошибка при скрытии поля.
 
MS Office 2003 SP3  
 
Есть таблица с данными по нескольким фирмам.  
Столбцы: Фирма, Период, Выручка, Маржа  
Добавляю вычисляемое поле "Рентабельность маржи" как =Маржа/Выручка  
Перемещаю поле "Рентабельность" в область данных, потом скрываю его. Все работает. Записываю макрос. Потом прогоняю макрос, поле добавляется, но при выполнении операции скрытия  
ActiveSheet.PivotTables("СводнаяТаблица1").PivotFields( _  
       "Сумма по полю Рентабельность").Orientation = xlHidden  
выдается ошибка 1004: Нельзя установить свойство Orientation класса PivotField  
 
При этом любое поле, исходно присутствуеющее в данных, легко показывается и скрывается макросом без проблем. Может, есть какая-то особенность при работе с вычисляемыми полями? вариант пририсовать колонку к исходным данным не катит.  
 
Второй день гуглю интернет, но решения не нашел. Помогите, пожалуйста.  
Файл с примером прилагаю.  
 
Заранее благодарен. С уважением, Павел.
Страницы: 1
Loading...