Excel erreur #REF! : causes et solutions
L’erreur Excel #REF! signifie qu’une formule fait référence à une cellule, une colonne ou une feuille qui n’existe plus, généralement après une suppression. Corrigez-la immédiatement avec Ctrl+Z, ou remplacez le texte #REF! dans la barre de formule par la bonne référence. Évitez sa réapparition en utilisant des tableaux Excel et des plages nommées.
L’erreur #REF! est l’un des messages les plus frustrants dans Excel, car elle apparaît souvent après avoir supprimé ou déplacé quelque chose. Contrairement à une faute de frappe, elle signale une référence qui n’existe littéralement plus. Découvrez ci-dessous d’où elle vient, comment la réparer et comment éviter qu’elle ne se reproduise.
L’erreur #REF! signifie qu’une formule pointe vers une cellule qui n’existe plus
L’erreur #REF! (abréviation de référence) apparaît dès qu’une formule renvoie à une cellule, une ligne, une colonne ou une feuille qui n’est plus valide. Excel ne peut pas remplacer la référence par une autre cellule et affiche le texte #REF! à l’endroit où figurait auparavant une adresse de cellule.
Vous le voyez dans la barre de formule. Là où, par exemple, se trouvait =B2*C2, vous lisez après la suppression de la colonne C : =B2*#REF!. La formule existe encore, mais il lui manque une adresse valide pour effectuer le calcul.
L’erreur se propage. Si une deuxième formule fait référence à la cellule contenant l’erreur #REF!, elle récupère cette erreur. Dans un modèle complexe, une seule colonne supprimée peut ainsi faire passer des dizaines de cellules en rouge. Il est donc préférable de repérer la source de l’erreur plutôt que de réparer chaque cellule séparément.
Ne confondez pas #REF! avec d’autres messages. #NOM? signifie qu’Excel ne reconnaît pas un nom de fonction ou une plage nommée, #VALEUR! indique un type de données incorrect, et #N/A signale qu’une fonction de recherche n’a rien trouvé. #REF! désigne spécifiquement une référence qui a perdu sa cible. Cette distinction vous aide à choisir la bonne solution : pour #REF!, on répare la référence, pas le nom de la fonction ni le type de donnée.
Quatre situations sont à l’origine de presque toutes les erreurs #REF!
L’erreur survient toujours parce que la cible d’une référence disparaît ou devient hors d’atteinte. Le tableau ci-dessous récapitule les quatre causes les plus fréquentes.
| Cause | Exemple |
|---|---|
| Suppression d’une ligne, colonne ou cellule qui était référencée | Colonne C supprimée alors que =B2*C2 pointait dessus |
| Suppression d’une feuille de calcul à laquelle la formule faisait référence | =Jan!B2 après que la feuille Jan a été supprimée |
| Une fonction de recherche pointe au‑delà du tableau | RECHERCHEV avec index_colonne 5 dans un tableau de 4 colonnes |
| Contenu collé ou coupé par‑dessus la cellule cible | Autres données collées par‑dessus la plage source |
Le couper (Ctrl+X) puis coller est particulièrement piégeux. Si vous coupez une cellule et la collez par‑dessus une cellule à laquelle une formule faisait référence, la cible d’origine disparaît et il ne reste qu’une erreur #REF!. Copier (Ctrl+C) n’a pas cet effet, car la source subsiste.
Dans les fonctions de recherche et de référence, #REF! surgit le plus vite
Certaines fonctions sont plus sensibles à cette erreur, car elles travaillent avec des positions fixes.
- RECHERCHEV. L’erreur se produit lorsque le numéro d’index de colonne est supérieur au nombre de colonnes de la matrice. Si vous supprimez une colonne à l’intérieur de cette matrice, le décompte se décale et l’index tombe en dehors du tableau. Pour préférer une méthode qui référence la colonne elle-même, lisez la différence dans RECHERCHEV vs XLOOKUP.
- INDEX. Si vous demandez à INDEX la ligne 12 dans une plage de 10 lignes, la fonction renvoie #REF! parce que cette ligne n’existe pas.
- INDIRECT. Cette fonction construit une référence à partir de texte. Si le texte est incorrect, par exemple à cause d’une feuille supprimée, elle renvoie immédiatement #REF!.
- Références 3D. Quand une formule fait référence à une série de feuilles (
=SOMME(Jan:Déc!B2)) et qu’une de ces feuilles est supprimée, la série peut se briser.
Le scénario est toujours le même : la fonction utilise une position qui a disparu suite à une modification.
Juste après une suppression, corrigez l’erreur avec Ctrl+Z
Si l’erreur #REF! provient d’une suppression récente, la solution la plus rapide est d’annuler.
- Appuyez immédiatement sur Ctrl+Z ou cliquez sur Annuler dans la barre d’outils Accès rapide. La ligne ou colonne supprimée réapparaît et la référence se rétablit.
- Si l’annulation n’est plus possible, sélectionnez la cellule en erreur et lisez la formule dans la barre de formule.
- Sélectionnez le morceau
#REF!dans la formule et tapez par‑dessus l’adresse de cellule ou la plage correcte. - Validez par Entrée et vérifiez que le résultat est correct.
Pour réparer une fonction de recherche, ajustez le numéro d’index de colonne à la nouvelle position de la colonne souhaitée, ou remplacez l’index fixe par un index qui recherche la colonne elle‑même. Si l’erreur se trouve dans une formule INDEX, vérifiez que le numéro de ligne ou de colonne demandé reste dans les limites de la plage.
Dans un grand classeur, repérez toutes les erreurs #REF! avec Rechercher et remplacer
Dans un fichier volumineux, les erreurs sont parfois disséminées sur plusieurs feuilles. Recherchez‑les en une seule fois.
- Appuyez sur Ctrl+H pour ouvrir Rechercher et remplacer.
- Dans Rechercher, tapez le texte
#REF!. - Cliquez sur Options et réglez Dans sur Classeur pour que toutes les feuilles soient parcourues.
- Choisissez Rechercher tout. Excel affiche la liste de toutes les cellules contenant l’erreur ; cliquez sur une ligne pour y accéder directement.
Si vous voulez comprendre comment une formule en arrive à cette erreur, utilisez Formules > Évaluer la formule. Excel déroule le calcul étape par étape, ce qui vous permet de voir précisément à quel moment la référence disparaît. Un autre outil pratique est Formules > Repérer les antécédents, qui trace des flèches vers les cellules qui alimentent une formule.
Exemple : réparer une RECHERCHEV cassée illustre la démarche
Un cas fréquent : vous aviez =RECHERCHEV(A2; Prix!A:E; 5; FAUX) pour récupérer le prix dans la cinquième colonne. Quelqu’un supprime la colonne C dans la feuille Prix, de sorte que le tableau ne compte plus que quatre colonnes. La formule continue de compter 5, cette colonne n’existe plus et le résultat devient #REF!.
- Cliquez sur la cellule en erreur et vérifiez dans la barre de formule si l’index (5) correspond encore à la nouvelle largeur du tableau.
- Recomptez les colonnes dans la feuille Prix. Le prix se trouve maintenant dans la quatrième colonne.
- Corrigez l’index à 4 :
=RECHERCHEV(A2; Prix!A:D; 4; FAUX). - Recopiez la formule corrigée sur les autres lignes.
Pour éviter ce genre de correction à l’avenir, remplacez l’index fixe par XLOOKUP ou INDEX avec EQUIV, qui référencent directement la colonne. Le détail complet se trouve dans RECHERCHEV vs XLOOKUP.
Des noms supprimés et des listes de validation provoquent aussi une #REF!
Les références de cellules ne sont pas les seules à se briser. Si vous utilisez une plage nommée dans une formule et que vous supprimez ce nom via Formules > Gestionnaire de noms, chaque formule qui l’utilisait devient une erreur. Excel affiche généralement #NOM?, mais il peut aussi s’agir de #REF! quand une référence de plage à l’intérieur du nom est rompue.
La validation des données est également sensible. Si une liste déroulante (Données > Validation des données) pointe vers une plage que vous supprimez ensuite, la liste ne fonctionne plus. En cas d’erreur, vérifiez que la source existe toujours dans Formules > Gestionnaire de noms, puis rétablissez le nom ou affectez une nouvelle plage. Ainsi, vous conservez non seulement vos formules, mais aussi vos listes de saisie et vos tableaux croisés dynamiques intacts.
Tableaux et noms empêchent les références de se briser
Vous évitez l’erreur #REF! en utilisant des références qui s’adaptent lorsque la structure change.
- Travaillez avec des tableaux Excel. Transformez votre plage en tableau avec Ctrl+T. Les références structurées comme
Ventes[Chiffre d’affaires]s’ajustent automatiquement quand vous ajoutez ou supprimez des lignes ou des colonnes. - Utilisez des noms pour les plages. Donnez un nom à une plage via Formules > Définir un nom. En référençant ce nom, la formule reste lisible et suit les déplacements.
- Préférez INDEX et EQUIV ou XLOOKUP plutôt qu’un numéro d’index de colonne fixe. Ces méthodes de recherche pointent vers la colonne elle‑même et ne se cassent pas si vous en insérez une.
- Supprimez des colonnes en connaissance de cause. Si vous voulez retirer une colonne, vérifiez d’abord avec Repérer les antécédents si des formules en dépendent.
- Masquez au lieu de supprimer. Si une colonne auxiliaire vous gêne visuellement, masquez‑la (clic droit, Masquer) plutôt que de la supprimer ; les colonnes masquées ne rompent pas les références.
Les tableaux croisés dynamiques sont tout aussi sensibles aux colonnes sources supprimées ; pour savoir comment les construire et les actualiser, consultez comment créer un tableau croisé dynamique dans Excel.
Avec SIERREUR, masquez proprement une erreur résiduelle
Parfois, une référence est temporairement vide ou l’erreur n’a simplement pas sa place dans votre rapport. Interceptez‑la avec SIERREUR pour afficher une valeur vide ou un texte personnalisé à la place de #REF! :
=SIERREUR(B2*C2; "")
Utilisez SIERREUR avec discernement. Il masque non seulement #REF!, mais aussi d’autres erreurs comme #DIV/0! et #N/A. Commencez donc par résoudre la référence sous‑jacente avant de l’envelopper dans SIERREUR, une fois que vous êtes certain que l’erreur est sans conséquence. Sinon, vous cachez un vrai problème dans votre calcul et vous risquez de ne remarquer que tardivement l’absence de chiffres.
Si vous souhaitez n’intercepter que certaines erreurs, utilisez SI.NON.DISP exclusivement pour #N/A, ou vérifiez au préalable avec ESTERREUR. Vous gardez ainsi la main sur les erreurs que vous voulez voir. Une bonne pratique consiste à laisser les erreurs visibles pendant la construction et à n’ajouter SIERREUR qu’une fois le modèle terminé et prêt à être partagé. Vous évitez ainsi de masquer des problèmes que vous devez encore corriger. Pour en savoir plus sur les messages fréquents et leur prévention, consultez l’explication de Microsoft sur l’erreur #REF!.
Questions fréquentes
L’erreur #REF! indique qu’une formule fait référence à une cellule, une ligne, une colonne ou une feuille qui n’existe plus. Excel ne peut pas remplacer l’adresse et affiche le texte #REF! dans la formule. La cause est presque toujours une suppression ou une cellule coupée.
Oui, si l’erreur vient d’apparaître suite à une suppression, appuyez immédiatement sur Ctrl+Z. La ligne ou colonne supprimée réapparaît et la référence se rétablit. Si l’annulation n’est plus possible, remplacez le texte #REF! dans la barre de formule par l’adresse correcte.
Ouvrez Rechercher et remplacer avec Ctrl+H et tapez #REF! dans le champ Rechercher. Dans Options, réglez la zone Dans sur Classeur, puis cliquez sur Rechercher tout. Excel dresse la liste de toutes les cellules concernées, vous permettant d’y accéder directement.
RECHERCHEV renvoie #REF! lorsque l’index de colonne dépasse le nombre de colonnes de la matrice. Cela se produit souvent après la suppression d’une colonne à l’intérieur du tableau. Corrigez l’index ou passez à XLOOKUP, qui référence directement la colonne.
Convertissez vos données en tableau Excel avec Ctrl+T et utilisez des références structurées ou des plages nommées. Celles‑ci s’ajustent automatiquement lorsque vous ajoutez ou supprimez des lignes ou colonnes, ce qui réduit considérablement l’apparition de l’erreur #REF!.
Lorsqu’une formule pointe vers une cellule qui contient elle‑même une erreur #REF!, elle hérite de cette erreur. Ainsi, une seule colonne supprimée peut faire passer toute une chaîne de cellules en rouge. Réparez donc la première erreur d’origine ; les cellules dépendantes se corrigeront automatiquement.
Articles similaires
Mira accompagne les entreprises dans leurs déploiements Windows et Office et résout au quotidien des problèmes d’activation, de licences et de codes d’erreur.
Voir le profil