Como resolver o erro VBA de "nome ambíguo detectado"

Anonim

Ao trabalhar com o VBA, você pode obter este pop-up de erro ao executar o procedimento. Este erro diz "Nome ambíguo detectado: nome do procedimento". Neste artigo, aprenderemos por que esse erro ocorre e como podemos resolvê-lo.

Por que esse erro?

Bem, como diz o pop-up, o mecanismo VBA detectou um ou mais procedimentos com o mesmo nome no mesmo módulo. Isso gerou confusão para o motor VBA. Portanto, o VBA relata o erro.

Como resolver este problema?

É fácil. Não tenha dois procedimentos iguais com o mesmo nome em um único módulo. Altere o nome do procedimento, exclua-o ou leve-o para outro módulo.

Este erro normalmente aparece durante o trabalho com eventos em Excel.

Digamos que você esteja trabalhando na planilha 1 com eventos da planilha. Agora você deseja acionar uma mensagem assim que o usuário alterar a seleção da célula. Nesse caso, você usará o evento Worksheet_SelectionChange ().

Agora, novamente, você deseja fazer algumas perguntas aos usuários à medida que eles alteram a seleção da célula. Então você terá que usar o mesmo evento. Agora você escreveu dois procedimentos de tratamento de eventos para tarefas diferentes.

Private Sub Worksheet_SelectionChange (ByVal Target As Range) MsgBox "Hi" End Sub Private Sub Worksheet_SelectionChange (ByVal Target As Range) Application.InputBox ("quem é você?") End Sub 

Agora, quando você altera a seleção na planilha, é isso que você obtém.

Agora, quando você altera a seleção na planilha, é isso que você obtém.

Veja, o fato é que o Excel não permite isso. Você não pode ter dois ou mais nomes iguais de funções em um módulo. Nem mesmo em eventos. Isso leva à ambigüidade.

Agora, se você quiser fazer uma tarefa diferente no mesmo evento, terá que colocar esse código no mesmo procedimento de evento. Use condições para controlar os eventos.

O evento abaixo funcionará perfeitamente bem. Quando o usuário altera a seleção de células na planilha1, uma mensagem oi aparecerá e depois disso fará uma pergunta ao usuário com uma caixa de entrada.

Private Sub Worksheet_SelectionChange (ByVal Target As Range) MsgBox "Hi" Application.InputBox ("who are you?") End Sub 

Agora que a ambigüidade se foi, o evento funcionará perfeitamente e você não receberá o erro nome ambíguo erro detectado novamente.

Então sim pessoal, é assim que você pode resolver o erro de ambigüidade no Excel VBA. Eu espero que isto tenha sido útil. Se você tiver alguma dúvida em relação a este artigo ou qualquer outro artigo, pergunte-me na seção de comentários abaixo.

A referência não é um erro válido do Excel e como resolvê-lo? : Este erro ocorre quando nos referimos a um objeto ou local que não existe ou foi alterado. Para resolver este problema, rastreamos a referência.

Os eventos no Excel VBA | Existem sete tipos de eventos no Excel. Cada evento trata de um escopo diferente. O evento do aplicativo lida com o nível da pasta de trabalho. Pasta de trabalho no nível da folha. Planilha de eventos em nível de alcance.

Os eventos de planilha no Excel VBA Submeter comentários Causa Os eventos de planilha são realmente úteis quando você deseja que suas macros sejam executadas quando um evento especificado ocorrer na planilha.

Eventos de pasta de trabalho usando VBA no Microsoft Excel | Os eventos da pasta de trabalho funcionam em toda a pasta de trabalho. Como todas as planilhas fazem parte da pasta de trabalho, esses eventos também funcionam nelas.

Impedir que uma macro automática / macro de evento seja executada usando VBA no Microsoft Excel | Para evitar a execução da macro auto_open, use a tecla shift.

Eventos de objeto de gráfico usando VBA no Microsoft Excel | Os gráficos são objetos complexos e há vários componentes que você anexa a eles. Para fazer os Eventos do Gráfico usamos o módulo Class.

Artigos populares:

50 atalhos do Excel para aumentar sua produtividade | Torne sua tarefa mais rápida. Esses 50 atalhos tornarão seu trabalho ainda mais rápido no Excel.

A função VLOOKUP no Excel | Esta é uma das funções mais usadas e populares do Excel, que é usada para pesquisar valores em diferentes intervalos e planilhas.

CONT.SE no Excel 2016 | Conte valores com condições usando esta função incrível. Você não precisa filtrar seus dados para contar um valor específico. A função Countif é essencial para preparar seu painel.

Como usar a função SUMIF no Excel | Esta é outra função essencial do painel. Isso ajuda você a somar valores em condições específicas.