Добрый день. Подскажите, пожалуйста, как можно сделать макрос, который по нажатию на кнопку будет отображать или скрывать определенные колонки сводной таблицы? Для скрытия делал так:
Код
Public Sub Hide()
Dim WS As Worksheet
Dim PT As PivotTable
Dim PF As PivotField
Dim PI As PivotItem
Set WS = ActiveSheet
Set PT = WS.PivotTables(1)
For Each PF In PT.DataFields
If PF.SourceName = "%disbursed" Then
Exit For
End If
Next
Set PI = PF.DataRange.Cells(1,1).PivotItem
PI.Visible = False
End Sub
Но нужно, чтобы по одной кнопке столбец скрывался, если он активен или добавлялся, если нет.
Имеется ввиду следующее: Если у столбца сводной таблицы "%disbursed" установлен флажок отображения в True, то по нажатию кнопки он должен быть False (т.е убираем отображение), если флажок отображения в False, то по нажатию переводим в True.
iv iv, здравствуйте Оформите код тэгом <…> на панели Если можно ориентироваться на заголовки полей, то забудьте о сводной, как об объекте, ищите номер столбца по заголовкам и скрывайте его
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
написал: столбец скрывался, если он активен или добавлялся, если нет
а Вы бы поняли что надо сделать? О каком именно столбце речь? О "%disbursed"? Или каком-то другом? И что подразумевается под активным - в нем выделена ячейка или он просто видимый?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Дмитрий(The_Prist) Щербаков , Речь о столбце "%disbursed". Имеется ввиду следующее: Если у столбца сводной таблицы "%disbursed" установлен флажок отображения в True, то по нажатию кнопки он должен быть False (т.е убираем отображение), если флажок отображения в False, то по нажатию переводим в True.
Как сделать просто скрытие столбца по диапазону ячеек я знаю, здесь нужно именно то, что описано выше.
написал: И что подразумевается под активным - в нем выделена ячейка или он просто видимый?
Речь о столбце "%disbursed". Имеется ввиду следующее: Если у столбца сводной таблицы "%disbursed" установлен флажок отображения в True, то по нажатию кнопки он должен быть False (т.е убираем отображение), если флажок отображения в False, то по нажатию переводим в True.
Как сделать просто скрытие столбца по диапазону ячеек я знаю, здесь нужно именно то, что описано выше.