Compartir a través de


Nombre ambiguo detectado

El identificador está en conflicto con otro identificador o necesita cualificación. Causas y soluciones de este error:

  • Es posible que varios objetos del mismo ámbito tenga elementos con el mismo nombre.

    Cualifique el nombre del elemento. Para ello, incluya el nombre del objeto y un punto. Por ejemplo:

    object.property

    Los identificadores en el nivel de módulo y los identificadores en el nivel de proyecto (nombres de módulo y nombres de proyecto al que se hace referencia) se pueden reutilizar en un procedimiento, pero con el inconveniente de que es más difícil mantener y depurar los programas. No obstante, si desea hacer referencia a ambos elementos en el mismo procedimiento, es necesario cualificar el elemento que tenga el mayor ámbito. Por ejemplo, si MyID se declara en el nivel de módulo de MyModuley, a continuación, se declara una variablede nivel de procedimiento con el mismo nombre en el módulo, las referencias a la variable de nivel de módulo deben estar debidamente calificadas:

      Dim MyID As String 
      Sub MySub 
      MyModule.MyID = "This is module-level variable" 
      Dim MyID As String 
      MyID = "This is the procedure-level variable" 
      Debug.Print MyID 
      Debug.Print MyModule.MyID 
      End Sub
    
  • Un identificador en el nivel de módulo está en conflicto con un nombre de procedimiento. Por ejemplo, esto ocurre si la variable MyID se declara en el nivel de módulo y después se define un procedimiento con el mismo nombre:

      Public MyID 
      Sub MyID 
      '. . . 
      End Sub 
    

    En este caso, tendrá que cambiar uno de los nombres porque la cualificación con un nombre de módulo común no resolvería la ambigüedad. Los nombres de procedimiento son Public (públicos) de forma predeterminada, pero los nombres de variable son Private (privados) a menos que se especifiquen como Public.

Para más información, seleccione el elemento en cuestión y presione F1 (en Windows) o AYUDA (en Macintosh).

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.