image

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 llevado a confusión para el motor VBA. Por lo tanto, el VBA informa el error.

¿Cómo solucionar 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 mientras se trabaja con

link: / events-in-vba-the-events-in-excel-vba [eventos en Excel]. * Supongamos 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, usará el `enlace: / consejos-usando-hoja-de-trabajo-cambio-evento-para-ejecutar-macro-cuando-se-haga-cualquier-cambio-[Worksheet_SelectionChange ()

Evento] `.

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 "Hi"

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Application.InputBox ("who are you?")

End Sub

Ahora, cuando cambia la selección en la hoja, esto es lo que obtiene.

image

Ahora, cuando cambia la selección en la hoja, esto es lo que obtiene.

image

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 "Hi"

Application.InputBox ("who are you?")

End Sub

Ahora que la ambigüedad se ha ido, 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 útil. 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.

Artículos relacionados:

link: / tips-reference-isnt-valid-excel-error-and-how-to-solve-it [¿La referencia no es un error válido de Excel y cómo resolverlo?]: 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.

link: / events-in-vba-the-events-in-excel-vba [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 del libro de trabajo. Libro de trabajo a nivel de hoja. Evento de hoja de trabajo a nivel de rango.

link: / events-in-vba-the-worksheet-events-in-excel-vba [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 sábana.

link: / events-in-vba-workbook-events-using-vba-in-microsoft-excel [Workbook events using VBA in 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.

link: / events-in-vba-prevent-that-an-automacroeventmacro-execute-using-vba-in-microsoft-excel [Impedir 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.

link: / events-in-vba-chart-object-events-using-vba-in-microsoft-excel [Eventos de objeto de gráfico 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.

Artículos populares:

link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-incrementa-su-productividad [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.

link: / fórmulas-y-funciones-introducción-de-vlookup-function [La función VLOOKUP 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.

enlace: / tips-countif-in-microsoft-excel [COUNTIF 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.

link: / excel-formula-and-function-excel-sumif-function [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.