Como Gary's Student apontou, você pode usar a formatação condicional para variar a cor (definida como cinza) com base no valor dessa (ou em qualquer célula). No entanto, se você estiver usando uma planilha protegida e quiser ativar / desativar células (por exemplo, ativar ou desativar a proteção) e também variar a cor da (s) célula (s) com base na proteção, será necessário usar um um pouco de VBA para proteger / desproteger células e, em seguida, usar a formatação condicional para definir a cor.
A formatação condicional definirá a cor com base na proteção da célula. Então, algo como esta fórmula:
=CELL("protect",$A1)=1
E o VBA pode ser colocado na subpasta Worksheet_Change (). Você poderia fazer isso com mais elegância, mas essencialmente algo assim:
If Target.Address = "$A$2" Then
ActiveSheet.Unprotect
Range("A3").Select
Selection.Locked = IIf(Range("A2").Value > "", True, False)
Range("A2").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If