O Microsoft Excel permite aplicar condicionalformatação para células. Se o valor em uma célula atender a determinadas regras que você definiu, o recurso de formatação condicional mudará a cor do texto na célula, ou a cor de preenchimento, ou ambas. Esse é um recurso básico que funciona imediatamente, no entanto, se você deseja bloquear células com base na cor, precisa de um pequeno script VBA para fazer isso.
Você pode usar a formatação condicional para alterar ocor de uma célula ou você pode alterar manualmente a cor para o que quiser. O script VBS não depende da formatação condicional para bloquear células. Ele só precisa de uma célula para ser colorida.
Bloquear células com base na cor
Antes de criar um script VBA, você precisa saber a cor da célula que você está referenciando. O VBA não vê as cores como elas são; faz referência a eles através de seus códigos de cores.
A primeira coisa que você precisa fazer é dar ao seu celularuma cor. Adotamos o amarelo básico que é fácil de referenciar. Se você optar por uma cor diferente, use este site para descobrir qual código de cor você precisa usar. O código de cores que estamos usando para amarelo é # FFFF00.
No Excel, ative a guia Desenvolvedor e mude para ela. Clique no botão Visual Basic e cole o seguinte em 'Esta planilha'. Este script foi escrito pelo usuário do Superusuário Dave.
Sub WalkThePlank() dim colorIndex as Integer colorIndex = FFFF00 Dim rng As Range For Each rng In ActiveSheet.UsedRange.Cells Dim color As Long color = rng.Interior.ColorIndex If (color = colorIndex) Then rng.Locked = True else rng.Locked = false End If Next rng End Sub

Execute o script e ele bloqueará todas as células da cor que você definir. O código de cores que você encontrou para sua cor será definido nesta linha no script;
colorIndex = FFFF00
O FFFF00 representa a cor amarela e isso éo que você precisa substituir por qualquer código de cores que se aplique à cor que você está usando. Devemos mencionar que é melhor usar uma cor básica. Depois de adicionar isso, você precisará salvar o arquivo do Excel como um arquivo habilitado para macro ou o script VBA não será salvo.
As células bloqueadas podem ser facilmente desbloqueadas. O bloqueio não é protegido por senha e impede que outras pessoas alterem o valor de uma célula, se quiserem. É um bloqueio comum que impede alterações acidentais no arquivo.
Comentários