Table of contents
TOC
Réduire la table des matières
Développer la table des matières

Nom ambigu détecté

office 365 dev account|Dernière mise à jour: 04/10/2017
|
1 Contributeur

L' identificateur est en conflit avec un autre identificateur ou exige d'être qualifié. Causes et solutions pour cette erreur :

  • Plusieurs objets de la même portée peuvent comporter des éléments qui portent le même nom.

    Qualifiez le nom de l'élément en l'accompagnant du nom de l'objet et d'un point. Par exemple :

    object.property

    Les identificateurs de niveau module et les identificateurs de niveau projet (noms de module et noms de projet référencé) peuvent être utilisés dans une procédure, même si cela complique la gestion et le débogage des programmes. Mais, si vous souhaitez faire référence aux deux éléments dans la même procédure, vous devez qualifier l'élément qui possède la portée la plus large. Si, par exemple MyID est déclaré au niveau module de MyModule et si une variable de niveau procédure est déclarée avec le même nom au sein de la procédure, les références à la variable de niveau module doivent être correctement qualifiées :

  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 identificateur déclaré au niveau module est en conflit avec un nom de procédure. Cette erreur survient notamment si la variable MyID est déclarée au niveau module et qu'une procédure est ensuite définie avec le même nom :
  Public MyID
Sub MyID
. . .
End Sub
Dans ce cas, vous devez modifier un des deux noms pour éliminer toute cause d'ambigüité. Par défaut, les noms de procédure sont  **Public** alors que les noms de variable sont **Private**, à moins qu'ils soient spécifiés comme étant **Public**.

Pour plus d'informations, sélectionnez l'élément en question et appuyez sur F1 (sur Windows) ou AIDE (sur Macintosh).

© 2018 Microsoft