Desproteger uma célula quando um caixa de seleção for acionada

Olá. Tenho uma planilha na qual todas as células estão protegidas e não permite nem que sejam selecionadas (a senha de proteção é “teste123”).
Na célula B4 tem uma caixa de seleção (CS1) que está vinculadas à célula G4. Ou seja, toda vez que ativa a CS1 o valor de G4 muda para “1” e quando desativa muda para “0”.
Na célula D3 tem uma regra de validação com uma lista suspensa que permite duas escolhas: “SALÁRIO MÍNIMO (%)” e “VALOR FIXO (R$)”.
Primeiramente gostaria de desproteger as células D4 e E4 quando a caixa de seleção CS1 fosse acionada e protegida novamente quando fosse desmarcada.
Depois disso, formatar a célula E4 como moeda ($) ou como percentual (%), dependendo do que for selecionado em D4. Ou seja, quando em D4 for selecionado “SALÁRIO MÍNIMO (%)”, formatar a célula E4 como % e quando for selecionado “VALOR FIXO (R$)” formatar E4 como $.
Nos eventos da planilha, vinculei a Macro “AlteredCell” ao “Conteúdo alterado” e a parte da formatação da célula E4 de acordo com a opção selecionada em D4 não está funcionando direito. Ainda precisa de uns ajustes. A parte do bloqueio/desbloqueio não consegui resolver, pois apresenta uma mensagem dizendo que o conteúdo da célula não pode ser alterado (acredito que seja porque está protegido com a senha).

TESTE.ods (12.5 KB)

Ola @LPICC, não entendi a necessidade da Caixa de seleção, veja a sugestão com Caixa de listagem, ligada a macro. ( Pode colocar a Caixa de listagem em cima da célula D4 )

TESTE_GS.ods (14,6,KB)