Como executar macro com base no valor da célula no Excel?
Suponha que eu tenha vários códigos de macro na minha pasta de trabalho e, agora, quero executar esses códigos com base no valor da célula. Neste artigo, falarei sobre várias situações que você pode enfrentar no seu trabalho diário ao usar o Excel.
Execute ou acione a macro se o valor da célula for igual a um texto específico com código VBA
Execute ou acione a macro se o valor da célula for maior ou menor que um valor específico com o código VBA
Por exemplo, se o valor na célula A1 estiver entre 10 e 50, execute macro1 e se o valor for maior que 50, execute macro2. Para resolver este trabalho no Excel, aplique o seguinte código VBA.
1. Clique com o botão direito na guia da planilha em que deseja executar a macro com base em um valor de célula e escolha Ver código a partir do menu de contexto, e no aberto Microsoft Visual Basic para aplicativos janela, copie e cole o seguinte código no módulo em branco:
Código VBA: execute a macro se o valor da célula for maior ou menor que:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Cells.Count > 1 Then Exit Sub
If IsNumeric(Target) And Target.Address = "$A$1" Then
Select Case Target.Value
Case 10 To 50: Macro1
Case Is > 50: Macro2
End Select
End If
End Sub
Note: No código acima:
A1 é a célula que contém o valor específico no qual você deseja executar a macro;
Caso 10 a 50: Macro1: significa que se o valor estiver entre 10 e 50, execute Macro1;
Caso é> 50: Macro2: significa que se o valor for maior que 50, execute Macro2.
Por favor, altere esses nomes de macro e critérios de acordo com sua necessidade, e você também pode adicionar mais critérios seguindo o Estudos de script.
2. Em seguida, salve e feche esta janela de código, agora, quando o valor inserido estiver entre 10 e 50 na célula A1, Macro1 será disparado, se o valor inserido for maior que 50, Macro2 será executado.
Execute ou acione a macro se o valor da célula for igual a um texto específico com código VBA
Se você deseja acionar a macro com base em um texto específico em uma célula, por exemplo, executar a macro1 se o texto “Excluir” for inserido, e executar a macro2 se o texto “Inserir” for digitado. O código a seguir pode lhe fazer um favor.
1. Clique com o botão direito na planilha em que deseja executar a macro com base no valor da célula e escolha Ver código a partir do menu de contexto, e no aberto Microsoft Visual Basic para aplicativos janela, copie e cole o seguinte código no módulo em branco:
Código VBA: Executar macro se o valor da célula for um texto específico
Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "Delete" Then
Call Macro1
End If
If target.Value = "Insert" Then
Call Macro2
End If
End Sub
Note: No código acima, “Apagar"E"inserção”São os textos de células em que você deseja executar macros, e Macro1 e Macro2 são as macros que você deseja executar com base no texto. Por favor, altere-os de acordo com sua necessidade.
2. Em seguida, salve este código e feche a janela, agora, ao inserir o texto “Excluir” na célula A1, a macro1 é acionada, se for inserido o texto “Inserir”, a macro2 será executada.
Artigos relacionados:
Como executar a macro quando o valor da célula muda no Excel?
Como executar macro automaticamente antes de imprimir no Excel?
Como executar a macro com base no valor selecionado da lista suspensa no Excel?
Como executar macro clicando em hiperlinks no Excel?
Como executar macro quando a planilha é selecionada em uma pasta de trabalho?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!