Mudar cor da célula ao clicar Excel

Mudar cor da célula ao clicar Excel

Neste artigo é demonstrado como mudar a cor da célula ao clicar no Excel.

O objetivo é destacar os dados para facilitar a leitura dos dados, para isso é realizada uma pequena automação que você poderá seguir passo-a-passo no Excel com VBA.

Você pode se interessar também por: Agilizar leitura de comentários no Excel

 

Mudar cor da célula ao clicar Excel

No exemplo da imagem acima, foi clicado na célula F9 e a linha 9 foi toda colorida, ao mudar a seleção para outro intervalo, esta célula automaticamente volta para a cor branca e a nova seleção fica colorida com esta cor verde.

Mudar cor da célula ao clicar Excel 2

Para fazer a implementação deste código siga os passos seguintes, entendendo também o código. Caso tenha dúvidas ou queira muito mais detalhes assista o vídeo no topo deste artigo.

Mudar a cor da célula ao clicar Excel

Esta rotina pode ser copiada e aplicada em qualquer planilha, bastando copiar o código e fazer pequenas adaptações como mudar a cor ou os limites da planilha.

  1. Abra a planilha aonde quer implementar a funcionalidade de colorir a linha ou as células selecionadas.
  2. Com a planilha aberta pressione CTRL+F11 ou clique na guia Desenvolvedor e no botão Visual Basic.
  3. Na tela do VBE (Visual Basic Editor), clique na planilha que está trabalhando, na árvore de objetos á esquerda e dê um duplo clique.
  4. Selecione então o objeto Worksheet e o evento Selection Change na janela de codificação á direita da árvore, conforme a imagem nos campos destacados em amarelo.Mudar cor da célula ao clicar Excel 3
  5. Na janela do código cole o seguinte código, pode inclusive substituir tudo que há na janela de código, este código já funciona diretamente.
'Guardar o intervalo anterior
Dim lTarget As Range

'Ao mudar a célula fazer
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Se a linha for maior do que 4 fazer
    If Target.Row >= 4 Then
        'Limpar o intervalo anterior que foi selecionado
        If Not lTarget Is Nothing Then
            'Mudar a cor para branco do intervalo anterior
            lTarget.EntireRow.Interior.ColorIndex = 0
        End If
        
        'Colorir com verde o intervalo atual
        Target.EntireRow.Interior.Color = 9359529
        
        'Guardar o intervalo selecionado
        Set lTarget = Target
    End If
End Sub

O código está devidamente comentado para facilitar os seus ajustes na cor ou ainda no número da linha á partir da qual será colorida a linha.

Caso queira colorir apenas o intervalo selecionado, e não a linha inteira, use o código abaixo.

 

'Guardar o intervalo anterior
Dim lTarget As Range

'Ao mudar a célula fazer
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Se a linha for maior do que 4 fazer
    If Target.Row >= 4 Then
        'Limpar o intervalo anterior que foi selecionado
        If Not lTarget Is Nothing Then
            'Mudar a cor para branco do intervalo anterior
            lTarget.Interior.ColorIndex = 0
        End If
        
        'Colorir com verde o intervalo atual
        Target.Interior.Color = 9359529
        
        'Guardar o intervalo selecionado
        Set lTarget = Target
    End If
End Sub

Veja o resultado deste segundo código:

Mudar cor da célula ao clicar Excel 4

Baixe a planilha

Abraço

Marcos Rieper

Veja mais artigos sobre VBA em: https://www.guiadoexcel.com.br/vba/