KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como desativar visualmente células com base noutra coluna ou numa opção de lista pendente no Excel?

AutorDom Data de Modificação

Em tarefas práticas no Excel, surgem frequentemente cenários em que é necessário destacar visualmente — ou tornar menos proeminente — determinados dados consoante o valor de uma célula relacionada. Um requisito comum é «desativar visualmente» (ou seja, escurecer ou atenuar) automaticamente certas células quando outra coluna contém um valor específico ou quando é feita uma seleção numa lista suspensa.
Esta formatação dinâmica facilita a interpretação de grandes conjuntos de dados, ajuda fluxos de trabalho que exigem restrição de entradas e clarifica quais os itens que não estão atualmente acionáveis. Por exemplo, um status de projeto pode desativar visualmente a descrição de uma tarefa se o estado for «Concluído».
Este artigo apresenta várias formas eficazes de desativar visualmente células com base nos valores de outra coluna ou numa opção de lista suspensa no Excel, abrangendo tanto as abordagens padrão com Formatação Condicionalcomo soluções VBA mais avançadas para requisitos complexos. Ao longo do texto, encontrará ainda sugestões de resolução de problemas e dicas práticas.
esbater células com base noutra coluna

Desativar visualmente células com base noutra coluna ou numa opção de lista pendente

VBA: Automatizar a desativação visual de células com base noutra coluna ou Lista suspensa


seta azul para a direita com balãoDesativar visualmente células com base noutra coluna ou numa opção de lista pendente

Imagine que tem duas colunas: a coluna A contém os seus dados principais (como tarefas ou descrições) e a coluna B contém indicadores ou estados (como «SIM»/«NÃO» ou seleções de um menu pendente). Poderá querer desativar visualmente os itens na coluna A com base nos valores da coluna B. Por exemplo, quando uma célula na coluna B mostra «SIM», a célula correspondente na coluna A aparece desativada visualmente, marcando-a como inativa ou concluída. Se a coluna B tiver outro valor (como «NÃO» ou estiver vazia), a coluna A mantém a sua aparência normal.

Esta abordagem é adequada para folhas de gestão de tarefas, listas de verificação, fluxos de trabalho ou qualquer folha em que o estado numa coluna controle a formatação noutra. Mantém os seus dados organizados e intuitivos, mas depende de colunas bem estruturadas e alinhadas (certifique-se de que as linhas correspondem corretamente).

1. Selecione as células na coluna A que pretende desativar automaticamente com base noutra coluna. Por exemplo, selecione A2:A100 (apenas as células correspondentes ao intervalo utilizado na coluna B). Em seguida, aceda a Base > Usar Formatação Condicional > Nova Regra.
clique em Início > Formatação Condicional > Nova Regra

2. Na caixa de diálogo Nova Regra de Formatação, clique em Utilizar uma fórmula para determinar quais as células a formatar. Introduza a seguinte fórmula =B2=«SIM» na caixa intitulada Formatar valores para os quais esta fórmula é verdadeira, que verifica se o valor na célula correspondente da coluna B é «SIM»:

3. Em seguida, clique no botão Formatar. Na caixa de diálogo Definir formato de célula, escolha uma cor cinzenta no separador Preenchimento. Esta será a cor de fundo utilizada para desativação visual.
especifique opções na caixa de diálogo Nova Regra de Formatação

4. Após definir a cor, clique em OK para fechar a janela Definir Formato de Célula e, em seguida, clique novamente em OK para aplicar a nova regra de formatação.
as células foram esbatidas com base nos valores de outra coluna

A partir de agora, sempre que a coluna B apresentar «SIM», a célula correspondente na coluna A aparecerá desativada visualmente. Se o valor na coluna B for alterado para outro (como «NÃO» ou vazio), a aparência da coluna A volta ao normal. Este método é imediato e não requer atualizações manuais após a configuração.

Dicas: Para aplicar isto com uma lista suspensa na coluna B, o processo é semelhante. Esta abordagem revela-se especialmente útil quando a coluna de controlo utiliza opções padronizadas, como o estado do projeto («Em curso», «Concluído»), caixas de verificação («Concluído», «Pendente») ou listas de validação com valores específicos permitidos.

Para criar um Lista suspensa na coluna B (a coluna de controlo):

  1. Selecione as células na coluna B onde pretende um menu pendente.
  2. Clique em Dados > Validação de Dados.
  3. Na caixa de diálogo Validar Dados, selecione Lista no menu pendente Permitir. Na caixa Origem, digite ou selecione um intervalo de células que contenha os valores permitidos (por exemplo,)SIM,NÃO).
    criar uma lista pendente na caixa de diálogo Validação de Dados

Agora, tem um Lista suspensa em cada célula da coluna B, permitindo aos utilizadores escolher entre opções predefinidas:
a lista pendente foi criada

Repita a configuração do Usar Formatação Condicional, conforme descrito acima, utilizando uma fórmula que corresponda ao valor que pretende utilizar para ativar o formato cinzento (por exemplo,)=B2=«SIM»). Após aplicar a formatação condicional, as células-alvo na coluna A serão automaticamente desativadas visualmente sempre que «SIM» for selecionado no menu pendente da coluna B.
repita os passos para obter o resultado

Dicas e precauções adicionais:
- Certifique-se de que o intervalo «Usar Formatação Condicional» na coluna A corresponde à área de dados e está alinhado com as referências da coluna B. Caso contrário, a formatação poderá não ser aplicada corretamente.
- Ao copiar ou preencher dados nas colunas, verifique se as referências (por exemplo, B2) são atualizadas adequadamente.
- Para obter os melhores resultados, remova qualquer formatação anterior dos seus intervalos antes de aplicar novas regras.
- Para remover o efeito de desativação visual, altere o valor de ativação na coluna B ou elimine a regra «Usar Formatação Condicional».
- Se a sua folha de cálculo for partilhada, certifique-se de que os utilizadores conhecem os valores que ativam a formatação.

Se o Usar Formatação Condicional não estiver a funcionar como esperado, verifique se as células da coluna B contêm exatamente os valores testados pela fórmula — sem espaços extra, com maiúsculas e minúsculas corretas (caso não esteja a utilizar correspondência exata) e validadas quanto a caracteres ocultos.

uma captura de ecrã de kutools for excel ai

Desbloqueie a Magia do Excel com KUTOOLS AI

  • Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
  • fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
  • Programação VBA: Escreva e implemente código VBA com facilidade.
  • Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
  • Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
Potencie as capacidades do seu Excel com ferramentas alimentadas por IA.Descarregue Agorae experimente uma eficiência como nunca antes!

seta azul para a direita com balãoVBA: Automatizar a desativação visual de células com base noutra coluna ou Lista suspensa

Para cenários mais avançados, como aplicar a formatação em lote, lidar com múltiplas e mais complexas condições ou quando as regras e limites do Usar Formatação Condicional não satisfazem os seus requisitos, pode utilizar código VBA para automatizar a desativação visual das células.

Casos de utilização comuns:
- Desativar automaticamente, visualmente, linhas inteiras ou intervalos específicos com base em seleções de menus pendentes ou em qualquer lógica associada a outra coluna.
- Garantir que a formatação permaneça consistente mesmo após importações de dados ou atualizações da folha geradas por macros.
- Aplicar múltiplos estados condicionais que ultrapassem os limites incorporados da funcionalidade «Usar Formatação Condicional».

1. Clique em Ferramentas de Programador > Visual Basicpara abrir o editor VBA ()Alt+F11 é um atalho). Na janela do VBA, clique em Inserir > Módulo. No novo módulo, copie e cole o seguinte código:

Sub GreyOutCellsBasedOnAnotherColumn()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim checkCol As String
    Dim dataCol As String
    Dim i As Long
    Dim triggerValue As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    '----- Set parameters here -----
    Set ws = ActiveSheet ' Or: Set ws = ThisWorkbook.Sheets("Sheet1")
    checkCol = "B" ' Column to check (e.g., B)
    dataCol = "A" ' Column to grey out (e.g., A)
    triggerValue = "YES" ' Value that triggers grey out. Change as needed: "YES", "Complete", etc.

    '----- Find last row in the check column -----
    lastRow = ws.Cells(ws.Rows.Count, checkCol).End(xlUp).Row
    
    For i = 2 To lastRow ' Assumes header in row 1
        If ws.Cells(i, checkCol).Value = triggerValue Then
            ws.Cells(i, dataCol).Interior.Color = RGB(191, 191, 191) ' Grey fill
        Else
            ws.Cells(i, dataCol).Interior.ColorIndex = xlNone ' Remove fill if condition not met
        End If
    Next i
End Sub

2. Para executar a macro, prima F5 com a janela de código ativa. A macro percorre cada linha da sua folha de cálculo — começando na linha 2 (para que a primeira linha possa permanecer como cabeçalho) — e verifica a coluna B em busca do valor de ativação (por predefinição, «SIM»). Se o encontrar, preenche a célula correspondente na coluna A com cinzento. Caso contrário, remove qualquer preenchimento cinzento anterior, restaurando a aparência predefinida da célula.

Pode personalizar os seguintes parâmetros no código:

  • checkCol: Coluna a verificar (por exemplo, «B»)
  • dataCol: Coluna a desativar visualmente (por exemplo, «A»)
  • triggerValue: Valor a comparar para ativar o preenchimento cinzento (por exemplo, «SIM», «Concluído», umValor Y na sua lista)

Precauções e dicas:

  • Esta macro altera permanentemente o fundo das células. Caso pretenda que as cores sejam atualizadas automaticamente sempre que os dados forem modificados, execute novamente a macro após cada atualização ou recorra à programação do evento Worksheet_Change (recomendado apenas para utilizadores avançados).
  • Esta abordagem não é afetada pelo número de células nem pelos limites das regras de Formatação Condicional, tornando-a ideal para grandes intervalos dinâmicos ou múltiplas condições.
  • Se acionar acidentalmente a macro e quiser remover os preenchimentos cinzentos, basta executá-la novamente depois de limpar ou alterar os valores relevantes.
  • Pode expandir a instrução If para adicionar mais condições (por exemplo, desativar visualmente com base em várias opções, colunas adicionais ou lógica mais complexa).

Utilizar VBA para desativar manual ou automaticamente células oferece flexibilidade máxima para soluções Excel complexas, em larga escala ou altamente personalizadas.

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos