Proteger/Desproteger Planilha por Código

Pessoal, estou precisando Desproteger/Proteger todas as Planilhas do projeto sempre que o usuário Admin trocar a senha. Criei as Funções LockSheet e UnlockSheet onde a senha usada para proteger/desproteger as planilhas é a do Usuário Admin que está na Planilha1.B2, mas isso só está tendo efeito na planilha ativa (Planilha1). Tem como fazer isso sem ter que ativar a planilha? Se alguém puder me ajudar, agradeço.

teste.ods (13.6 KB)

Suas funções são incorretas, olha como devem ser.

Function LockSheet(Planilha)

	ThisComponent.Sheets.getByName(Planilha).protect(LockPwd)

End Function

Function UnLockSheet(Planilha)

	ThisComponent.Sheets.getByName(Planilha).unProtect(LockPwd)

End Function

De fato @elmau. Foi pura falta de atenção da minha parte. Obvio que usando o argumento “getActiveSheet” ao invés de “getByName”, só iria ter resultado sobre a planilha ativa. Desculpem pelo deslize!!! Obrigado!

Segue a Planilha com as correções:
Proteger-Desproteger Planilha.ods (12.9 KB)