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

Como ativar ou desativar um botão com base no valor de uma célula no Excel?

AutorXiaoyang Data de Modificação

Neste artigo, apresento alguns métodos para ativar ou desativar um botão com base no valor de uma célula numa folha de cálculo do Excel.

Ativar ou desativar dois botões com base em dados de duas colunas com código VBA

Ativar ou desativar um botão com base em valores de duas células com código VBA


Ativar ou desativar dois botões com base em dados de duas colunas com código VBA

Por exemplo, imagine que tem dois botões de comando numa folha de cálculo: sempre que a Coluna A contiver dados, o Botão 1 é ativado e o Botão 2 desativado; por outro lado, se a Coluna C contiver dados, o Botão 2 é ativado e o Botão 1 desativado. Para resolver esta tarefa, o seguinte código VBA poderá ajudá-lo.

1. Clique com o botão direito na folha que contém os botões e, em seguida, escolha Ver Código no menu de contexto, conforme mostra a captura de ecrã:

uma captura de ecrã da abertura do editor de código VBA no Excel

2. Na janela do Microsoft Visual Basic for Applications, copie e cole o código abaixo no módulo em branco:

Código VBA: Ativar ou desativar dois botões com base em duas colunas:

Private Sub Worksheet_Change(ByVal Target As Range)
    CommandButton1.Enabled = False
    CommandButton2.Enabled = False
    If Application.WorksheetFunction.CountA(Range("C:C")) > 0 Then
        CommandButton2.Enabled = True
    End If
    If Application.WorksheetFunction.CountA(Range("A:A")) > 0 Then
        CommandButton1.Enabled = True
    End If
End Sub

uma captura de ecrã que mostra como utilizar o código VBA para desativar dois botões

Nota: No código acima, CommandButton1 e CommandButton2 são os nomes dos botões, e A:A e C:C são as duas colunas utilizadas para ativar ou desativar esses botões; altere-as conforme necessário.

3. Em seguida, guarde e feche a janela do código. Agora, obterá o seguinte resultado conforme pretendido:

(1.) Se introduzir dados na Coluna A, o botão 1 é ativado e o botão 2 é desativado, conforme mostra a captura de ecrã:

uma captura de ecrã que mostra que um botão pode ser utilizado e outro está desativado com base no valor na coluna A

(2.) Se introduzir dados na Coluna C, o botão 2 é ativado e o botão 1 é desativado, conforme mostra a captura de ecrã:

uma captura de ecrã que mostra que um botão pode ser utilizado e outro está desativado com base no valor na coluna C

(3.) Se ambas as colunas A e C contiverem dados, os dois botões são ativados, conforme mostra a captura de ecrã:

uma captura de ecrã que mostra que ambos os botões podem ser utilizados quando as colunas A e C contêm dados

(4.) Os dois botões são desativados se não houver dados nas colunas A e C, conforme mostra a captura de ecrã:

uma captura de ecrã que mostra que ambos os botões estão desativados quando não há dados nas colunas A e C


Ativar ou desativar um botão com base em valores de duas células com código VBA

Se pretender ativar ou desativar um botão de comando com base nos valores de duas células — por exemplo, ativar o botão quando o valor em A1 for superior ao valor em B1 e desativá-lo caso contrário — o seguinte código VBA também poderá ser útil.

1. Clique com o botão direito na folha que contém o botão e, em seguida, escolha Ver Código no menu de contexto. Na janela do Microsoft Visual Basic for Applications, copie e cole o código abaixo no módulo em branco, conforme mostra a captura de ecrã:

Código VBA: Ativar ou desativar um botão com base em valores de duas células:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim TargetAdd As String
    Dim xTemp As Double
    On Error GoTo ExitSub
    TargetAdd = Target.Address
    CommandButton1.Enabled = False
    If (TargetAdd = Range("A1").Address) Or (TargetAdd = Range("B1").Address) Then
        If Range("A1") > Range("B1") Then
            CommandButton1.Enabled = True
        End If
    End If
ExitSub:
End Sub

uma captura de ecrã que mostra como utilizar o código VBA para ativar ou desativar um botão

Nota: No código acima, A1 e B1 são os valores das células utilizados, e CommanButton1 é o nome do botão; altere-os conforme necessário.

2. Em seguida, guarde e feche a janela do código. Agora, se o valor da célula A1 for superior ao da B1, o botão é ativado; caso contrário, se o valor em A1 for inferior ao da B1, o botão é desativado, conforme mostra a captura de ecrã:

uma captura de ecrã que mostra o estado diferente de um botão com base no valor da célula


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