Erreur 9
L'erreur 9 signifie que VBA cherche un élément qui n'existe pas dans une collection : une feuille au nom légèrement différent, un classeur qui n'est pas ouvert, ou une case d'un tableau au-delà de sa taille.
Télécharger la fiche PDF gratuiteSans inscription, mise en page prête à imprimer01Le message
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection. Le nom ou le numéro demandé ne correspond à aucun élément de la collection (feuilles, classeurs, tableau).
02Les causes les plus fréquentes
| Cause | Exemple | Correction |
|---|---|---|
| Nom de feuille différent | Worksheets("Janvier ") avec une espace en trop | copier le nom exact de l'onglet, ou utiliser le nom de code |
| Feuille renommée par l'utilisateur | l'onglet Ventes est devenu Ventes 2026 | utiliser le nom de code (Feuil1) |
| Classeur non ouvert | Workbooks("Budget.xlsx") alors que le fichier est fermé | l'ouvrir d'abord avec Workbooks.Open |
| Indice de tableau hors limites | Dim t(1 To 5) puis t(6) = 1 | vérifier avec UBound(t) |
| Tableau dynamique non dimensionné | Dim t() As Long puis t(1) = 5 | ReDim t(1 To n) avant l'usage |
03Vérifier avant d'utiliser
Sub OuvrirFeuille() Dim ws As Worksheet On Error Resume Next Set ws = ThisWorkbook.Worksheets("Synthèse") On Error GoTo 0 If ws Is Nothing Then MsgBox "La feuille Synthèse est introuvable.", vbExclamation Exit Sub End If ws.Activate End Sub
Selon les réglages de Windows, Workbooks("Budget") peut échouer alors que Workbooks("Budget.xlsx") fonctionne. Indiquez toujours l'extension.
04Pièges à éviter
Dim t(5) crée six cases, numérotées de 0 à 5. Pour éviter toute ambiguïté, écrivez les bornes : Dim t(1 To 5).
« Synthese » et « Synthèse » sont deux noms différents. En cas de doute, listez les feuilles avec une boucle For Each et Debug.Print ws.Name.
05Questions fréquentes
Que signifie l'erreur 9 en VBA ?
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection. Le nom ou le numéro demandé ne correspond à aucun élément de la collection (feuilles, classeurs, tableau).
Quel est le piège le plus fréquent avec l'erreur 9 ?
Un tableau qui commence à 0. Dim t(5) crée six cases, numérotées de 0 à 5. Pour éviter toute ambiguïté, écrivez les bornes : Dim t(1 To 5).
La fiche « Erreur 9 » est-elle gratuite ?
Oui. La fiche est en accès libre et gratuit, sans inscription : vous pouvez la lire en ligne et télécharger sa version PDF. Elle fait partie du cours VBA gratuit de mesetudesdecas.fr, qui compte 21 fiches.
Passez de la fiche à la mise en situation
Les études de cas mesetudesdecas.fr placent vos apprenants face à un vrai besoin d'entreprise. L'étude de cas XL-05 fait automatiser un devis commercial de bout en bout, macros comprises, avec énoncé, corrigé et pas-à-pas du formateur.
Découvrir l'étude de cas XL-05Toutes les fiches du cours VBA gratuit
Voir aussi le cours gratuit sur les formules Excel
Fiche V1.2 | Dernière mise à jour : 29/10/2026 | Clément Delobel, formateur Excel et VBA