Mientras trabaja con VBA, puede obtener esta ventana emergente de error cuando ejecuta el procedimiento. Este error dice "Se detectó un nombre ambiguo: nombre del procedimiento". En este artículo, aprenderemos por qué ocurre este error y cómo podemos solucionarlo.
¿Por qué este error?
Bueno, como dice la ventana emergente, el motor VBA ha detectado uno o más procedimientos con el mismo nombre en el mismo módulo. Esto ha provocado confusión en el motor VBA. Por lo tanto, VBA informa el error.
¿Cómo resolver este problema?
Es fácil. No tenga dos procedimientos iguales con el mismo nombre en un solo módulo. Cambie el nombre del procedimiento, elimínelo o llévelo a otro módulo.
Este error suele aparecer al trabajar con eventos en Excel.
Digamos que está trabajando en sheet1 con eventos de la hoja de trabajo. Ahora desea activar un mensaje tan pronto como el usuario cambie la selección de celda. En ese caso, utilizará el evento Worksheet_SelectionChange ().
Ahora, nuevamente, desea hacer algunas preguntas a los usuarios cuando el usuario cambia la selección de celda. Entonces tendrás que usar el mismo evento. Ahora ha escrito dos procedimientos de manejo de eventos para diferentes tareas.
Private Sub Worksheet_SelectionChange (ByVal Target As Range) MsgBox "Hola" End Sub Private Sub Worksheet_SelectionChange (ByVal Target As Range) Application.InputBox ("¿quién es usted?") End Sub
Ahora, cuando cambia la selección en la hoja, esto es lo que obtiene.
Ahora, cuando cambia la selección en la hoja, esto es lo que obtiene.
Mira, la cosa es que Excel no permite esto. No puede tener dos o más nombres iguales de funciones en un módulo. Ni siquiera en Eventos. Conduce a la ambigüedad.
Ahora, si desea realizar una tarea diferente en el mismo evento, debe poner ese código en el mismo procedimiento de un evento. Utilice condiciones para controlar los eventos.
El siguiente evento funcionará perfectamente bien. Cuando el usuario cambia la selección de celda en la hoja1, aparecerá un mensaje de saludo y luego le hará una pregunta al usuario con un cuadro de entrada.
Private Sub Worksheet_SelectionChange (ByVal Target As Range) MsgBox "Hola" Application.InputBox ("¿quién eres?") End Sub
Ahora que ha desaparecido la ambigüedad, el evento funcionará perfectamente bien y no volverá a aparecer el error de nombre ambiguo detectado.
Así que sí, chicos, así es como pueden resolver el error de ambigüedad en Excel VBA. Espero que esto haya sido de ayuda. Si tiene alguna duda con respecto a este artículo o cualquier otro artículo, pregúnteme en la sección de comentarios a continuación.
¿La referencia no es un error de Excel válido y cómo solucionarlo? : Este error ocurre cuando nos referimos a un objeto o ubicación que no existe o ha cambiado. Para solucionar este problema rastreamos la referencia.
Los eventos en Excel VBA | Hay siete tipos de eventos en Excel. Cada evento tiene un alcance diferente. El evento de aplicación se ocupa del nivel de libro de trabajo. Libro de trabajo a nivel de hoja. Evento de hoja de trabajo a nivel de rango.
Los eventos de la hoja de trabajo en Excel VBA | Los eventos de la hoja de trabajo son realmente útiles cuando desea que sus macros se ejecuten cuando ocurre un evento específico en la hoja.
Eventos del libro de trabajo usando VBA en Microsoft Excel | Los eventos del libro funcionan en todo el libro. Dado que todas las hojas son parte del libro de trabajo, estos eventos también funcionan en ellas.
Evite que una macro automática / macro de eventos se ejecute usando VBA en Microsoft Excel | Para evitar la ejecución de la macro auto_open use la tecla shift.
Graficar eventos de objetos usando VBA en Microsoft Excel | Los gráficos son objetos complejos y hay varios componentes que se les adjuntan. Para hacer los eventos del gráfico usamos el módulo Clase.
Articulos populares:
50 accesos directos de Excel para aumentar su productividad | Acelera tu tarea. Estos 50 atajos harán que su trabajo sea aún más rápido en Excel.
La función BUSCARV en Excel | Esta es una de las funciones más utilizadas y populares de Excel que se utiliza para buscar valores de diferentes rangos y hojas.
CONTAR.SI en Excel 2016 | Cuente valores con condiciones usando esta asombrosa función. No necesita filtrar sus datos para contar un valor específico. La función Countif es esencial para preparar su tablero.
Cómo usar la función SUMIF en Excel | Esta es otra función esencial del tablero. Esto le ayuda a resumir valores en condiciones específicas.