Partage via


Déclaration en double dans l’étendue en cours

Le nom spécifié est déjà utilisé à ce niveau de portée. Par exemple, deux variables peuvent porter le même nom si elles sont définies dans des procédures différentes, mais pas si elles sont définies au sein de la même procédure. Causes et solutions pour cette erreur :

  • Une nouvelle variable ou une nouvelle procédure possède le même nom qu’une variable ou une procédure existante. Par exemple :

      Sub MySub() 
      Dim A As Integer 
      Dim A As Variant 
      . . .        ' Other declarations or procedure code here. 
      End Sub
    

    Vérifiez la procédure, le module ou le projet actuel et supprimez les déclarations en double.

  • Une instruction Const utilise le même nom qu’une variable ou procédure existante. Supprimez ou renommez la constante en question.

  • Vous avez déclaré plusieurs fois un tableau fixe.

    Supprimez ou renommez un des tableaux.

Recherchez le nom en double. Lorsque vous spécifiez le nom à rechercher, enlevez tout caractère de déclaration de type, car des noms identiques engendrent un conflit si les caractères de déclaration de type sont différents.

Notez qu’une variable de niveau module peut porter le même nom qu’une variable déclarée dans une procédure, mais lorsque vous souhaitez faire référence à la variable de niveau module dans la procédure, vous devez la qualifier avec le nom du module. Les noms de modules et les noms des projets référencés peuvent être réutilisés en tant que noms de variables dans les procédures et peuvent également être qualifiés.

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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.