Você pode ativar uma macro em uma planilha do Excel quando uma célula é igual a um valor predefinido usando os seguintes métodos:
1. Usando o evento de alteração da planilha: *
Etapas: 1.
Clique com o botão direito do mouse Na guia Folha e selecione "
Exibir código ".
2. No editor VBA, selecione "
planilha "Do" objeto
"Dropdown e"
Mudar "do procedimento"
" suspenso.
3. Digite o seguinte código:
`` `VBA
Sub -planilha privada (alvo Byval como alcance)
Se Target.address ="$ A $ 1", então 'substitua "$ a $ 1" com o endereço da célula
Se Target.Value ="YourPredefinedValue" então
Ligue para YourMacroname 'Substituir "YourMacroname" com o nome macro real
Final se
Final se
Final sub
`` `
* Substitua `" $ A $ 1 "` pelo endereço da célula real que você deseja monitorar.
* Substitua `" yourpredefinedValue "` pelo valor que você deseja acionar a macro.
* Substitua `" yourmacroname "` pelo nome real da macro que você deseja executar.
*
Explicação: * O evento `worksheet_change` aciona sempre que um valor de célula é alterado na folha.
* O código verifica se a célula alterada é a célula especificada e se seu valor corresponde ao valor predefinido.
* Se ambas as condições forem atendidas, ele chama a macro especificada.
2. Usando a validação de dados: *
Etapas: 1.
selecione a célula que você deseja monitorar.
2. Vá para os dados
guia e clique em
validação de dados .
3. Nas configurações
guia, escolha
personalizado do
permita suspenso.
4. Na fórmula
campo, digite:
`` `
=A1 ="YourPredefinedValue"
`` `
* Substitua `" YourPredefinedValue "` pelo valor real que você deseja acionar a macro.
5. Vá para o alerta de erro
guia e escolha
Mostrar alerta de erro após a inserção de dados inválidos .
6. Na mensagem de erro
Campo, digite o seguinte:
`` `
Esta célula deve conter o valor "YourPredefinedValue"
`` `
* Substitua `" yourpredefinedValue "` pelo valor real.
7. Clique em
ok Para salvar as configurações.
8.
Clique com o botão direito do mouse na célula e selecione "
atribuir macro ".
9. Escolha a macro que deseja executar e clique em
ok .
*
Explicação: * A validação de dados restringe a célula a aceitar apenas o valor predefinido.
* Quando o usuário insere um valor inválido, uma mensagem de erro é exibida e a macro atribuída à célula é executada.
3. Usando uma fórmula com um evento worksheet_calculate: *
Etapas: 1.
Criar Uma fórmula em uma célula oculta que avalia para `true 'quando a célula monitorada é igual ao valor predefinido. Por exemplo, na célula `b1`:
`` `
=A1 ="YourPredefinedValue"
`` `
* Substitua `" yourpredefinedValue "` pelo valor real.
2.
Clique com o botão direito do mouse Na guia Folha e selecione "
Exibir código ".
3. No editor VBA, selecione "
planilha "Do" objeto
"Dropdown e"
Calcule "do procedimento"
" suspenso.
4. Digite o seguinte código:
`` `VBA
Sub -planilha privada_calculate ()
Se range ("b1"). Value =true então 'substitua "b1" pela célula que contém a fórmula
Ligue para YourMacroname 'Substituir "YourMacroname" com o nome macro real
Intervalo ("B1"). Valor =Falso 'Redefinir a célula para false
Final se
Final sub
`` `
* Substitua `" B1 "` pelo endereço da célula real que contém a fórmula.
* Substitua `" yourmacroname "` pelo nome real da macro que você deseja executar.
*
Explicação: * O evento `worksheet_calculate` aciona sempre que um cálculo ocorre na folha.
* O código verifica se o valor na célula da fórmula é `true`.
* Se for "true", ele chama a macro especificada e depois redefine a célula de fórmula para "falsa" para evitar a execução repetida.
Escolha o melhor método com base em seus requisitos específicos e na complexidade da sua planilha.