2016-06-16 3 views
0

Мне нужно защитить/снять защиту файла excel с помощью макроса, но мне все же нужно иметь возможность использовать кнопки развернуть/свернуть, пока файл защищен. Вот картинка:Разрешить использование кнопок расширения/свернуть в защищенном листе Excel

collapse/expand buttons

Вот код, я использую:

Sub IPMR() 
' 
' IPMR Macro 
' 
    Sheet1.Unprotect Password:="XXX" 
' 
    ActiveSheet.PivotTables("PivotTable1").PivotFields("FacilityName"). _ 
     ClearAllFilters 
    ActiveSheet.PivotTables("PivotTable1").PivotFields("FacilityName").CurrentPage _ 
     = "Inst of Physical Med and Rehab" 

     Set pt = ActiveSheet.PivotTables("PivotTable1") 
     Set pf = pt.RowFields("Row Labels") 
     pf.EnableItemSelection = True 

    Sheet1.Protect Password:="XXX" 
End Sub 

Однако, когда я использую это, я получаю сообщение об ошибке: Не удается получить RowFields свойство PivotTable класса , Пожалуйста, направляйте. Спасибо.

ответ

0

Это не правильный способ определения меток строк, вы должны иметь название для него, попробуйте следующий код:

Sub showDetailsinPT() 
'I think your title in row lables is FacilityName? 
Dim TotalPTItem As PivotItems: Set TotalPTItems = ActiveSheet.PivotTables("PivotTable1").PivotFields("FacilityName").PivotItems 
Dim CounterPTItem As PivotItem 

For Each CounterPTItem In TotalPTItems 
CounterPTItem.ShowDetail = True 
Next CounterPTItem 
End Sub 

Изображение рабочего кода: enter image description here

+0

Невозможно установить свойство showDetail из класса PivotItem – Haris

+0

вы сняли защиту листа? – Sgdva

Смежные вопросы