Makra Hide & Unhide nie działają po zablokowaniu kolumn i arkusza ochronnego

0

Mam dwie kolumny, E i amp; G, które mają w nich formuły, więc zablokowałem te kolumny i chroniłem arkusz, w którym się znajdują. Mam dwa przyciski na arkuszu: Ukryj i Odkryj przycisk. Po zablokowaniu tych kolumn i chroniąc arkusz, te makra przypisane do tych przycisków już nie działają. Kiedy wybieram przyciski, otrzymuję błąd czasu wykonania „1004”, nie można ustawić ukrytej właściwości klasy Range. Kod makra jest następujący:

Sub Hide()
'
' Hide Macro
'
' Keyboard Shortcut: Ctrl+Shift+H
'
    For Each c In Range("C7:C446")
    If IsEmpty(c.Value) Then
    'If (c.Value) = "" Then
     c.EntireRow.Hidden = True
    End If
    Next c

End Sub

Odkryj makro:

Sub UH()
'
' UH Macro
'

'
    Rows("6:447").Select
    Selection.EntireRow.Hidden = False
End Sub

Myślę, że muszę dodać polecenie unprotect, którego próbowałem, ale nie działa. Próbowałem:

Worksheets("JE").Unprotect Password:="ImportLCPA17", UserInterfaceOnly:=True

czy ktoś wie o jakichkolwiek zmianach, jakie mogę wprowadzić, aby mieć tych ukryć i odkryć makra, połączone z przyciskami, działają, gdy te kolumny są zablokowane?

anve
źródło
Tak, musisz odblokować arkusz, co można zrobić w makrze. Myślę, że problem dotyczy części UserInterfaceOnly: = True. Ustaw to dla wszystkich. Po zakończeniu ponownie zablokuj arkusz, używając tego samego makra.
LPChip
@LPChip tak, zarówno w ukryciu, jak i makra odkryć mają na początku oświadczenie o niezabezpieczeniu, takie jak: Worksheets("JE").Unprotect Password:="ImportLCPA17", UserInterfaceOnly:=All a następnie oświadczenie o ochronie na końcu: Worksheets("JE").Protect Password:="ImportLCPA17", UserInterfaceOnly:=All ? Dzięki za twoją odpowiedź!
anve
Tak, chodzi o to.
LPChip

Odpowiedzi:

0

To właśnie dla mnie działało:

Aby początkowo odblokować arkusz: Worksheets("name").Unprotect Password:="password"

Aby ponownie chronić arkusz: Worksheets("name").Protect Password:="password"

anve
źródło