Cours VBA gratuit | Erreurs

Erreur 9

Gratuit, sans inscription Niveau 2 / 3 | Intermédiaire Lecture 5 min V1.2 | 29/10/2026

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 à imprimer

01Le message

En une phrase

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

CauseExempleCorrection
Nom de feuille différentWorksheets("Janvier ") avec une espace en tropcopier le nom exact de l'onglet, ou utiliser le nom de code
Feuille renommée par l'utilisateurl'onglet Ventes est devenu Ventes 2026utiliser le nom de code (Feuil1)
Classeur non ouvertWorkbooks("Budget.xlsx") alors que le fichier est fermél'ouvrir d'abord avec Workbooks.Open
Indice de tableau hors limitesDim t(1 To 5) puis t(6) = 1vérifier avec UBound(t)
Tableau dynamique non dimensionnéDim t() As Long puis t(1) = 5ReDim t(1 To n) avant l'usage

03Vérifier avant d'utiliser

Tester l'existence d'une feuille
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
💡 AstuceLes extensions de fichier

Selon les réglages de Windows, Workbooks("Budget") peut échouer alors que Workbooks("Budget.xlsx") fonctionne. Indiquez toujours l'extension.

04Pièges à éviter

⚠️ PiègeUn 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).

⚠️ PiègeLes noms qui se ressemblent

« 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.

Pour les formateurs

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-05
Voir aussi

Toutes 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