Partage via


Indice hors plage (Erreur 9)

Les éléments de tableaux et les membres de collections ne sont accessibles que dans leurs plages définies. Causes et solutions pour cette erreur :

  • Vous avez référencé un élément de tableau qui n'existe pas. L'indice peut être plus grand ou plus petit que la plage d'indices possibles, ou le tableau n'a pas de dimensions affectées à ce point dans l'application. Vérifiez la déclaration du tableau pour contrôler ses limites supérieure et inférieure. Utilisez les fonctions UBound et LBound pour conditionner les accès au tableau si vous utilisez des tableaux redimensionnés. Si l'index est spécifié en tant que variable, vérifiez l'orthographe du nom de la variable.

  • Vous avez déclaré un tableau, mais vous n'avez pas spécifié le nombre d'éléments. Par exemple, le code suivant génère cette erreur :

      Dim MyArray() As Integer 
      MyArray(8) = 234 ' Causes Error 9. 
    

    Visual Basic ne dimensionne pas implicitement les plages de tableau non spécifiées en tant que 0 - 10. Au lieu de cela, vous devez utiliser Dim ou ReDim pour spécifier de manière explicite le nombre d’éléments dans une matrice.

  • Vous avez référencé un membre de collection qui n'existe pas. Essayez d'utiliser la construction For Each...Next plutôt que de spécifier les éléments d'index.

  • Vous avez utilisé une forme abrégée d'indice qui a explicitement spécifié un élément non valide. Par exemple, lorsque vous utilisez l’opérateur ! avec une collection, ! spécifie implicitement une clé. Par exemple, object!keyname. value est équivalente à l’objet. item (keyname). value. Dans ce cas, une erreur est générée si keyname représente une clé non valide dans la collection. To fix the error, use a valid key name or index for the collection.

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

Remarque

Vous voulez développer des solutions qui étendent l’expérience Office sur plusieurs plateformes ? Découvrez le nouveau modèle de compléments Office. Les compléments Office ont un encombrement réduit par rapport aux compléments et solutions VSTO. Vous pouvez les créer à l’aide de pratiquement n’importe quelle technologie de programmation web, telle que HTML5, JavaScript, CSS3 et XML.

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.