Aller au contenu principal
Mis à jour le

Comprendre et corriger l'erreur #CALC! dans Excel

L'erreur #CALC! apparaît quand une formule dynamique (souvent FILTRE ou UNIQUE) ne peut pas produire de résultat valide. Le cas le plus fréquent est un FILTRE qui ne trouve aucune ligne correspondant au critère : Excel se retrouve avec un tableau vide qu'il ne sait pas afficher, d'où l'erreur.

Cellule Excel affichant l'erreur #CALC! avec le triangle vert d'alerte, renvoyée par une formule dynamique sans résultat à afficher
L'erreur #CALC! survient quand une formule dynamique comme FILTRE ne produit aucun résultat, par exemple un filtre qui ne trouve aucune ligne.

Pourquoi Excel affiche l'erreur #CALC!

L'erreur #CALC! apparaît quand une formule dynamique a bien tourné mais se retrouve sans résultat valide à déverser. Une fonction comme FILTRE ou UNIQUE est censée renvoyer une liste de valeurs, et Excel bute dès que cette liste est vide, faute de la moindre valeur à déverser dans les cellules. C'est un défaut de contenu et non de place, ce qui la sépare tout de suite de #PROPAGATION!.

Le déclencheur numéro un, c'est un FILTRE dont le critère ne trouve aucune ligne. Tu demandes tes clients de Paris, aucune ligne ne porte « Paris » en colonne Ville, et le filtre revient les mains vides. Rien n'est cassé pour autant, il n'y a tout bonnement personne à afficher, et le résultat réapparaît dès qu'une ligne correspond de nouveau.

Liste de clients Excel où une formule FILTRE cherchant Paris renvoie #CALC! parce qu'aucun client ne correspond.
Aucun client n'a « Paris » en colonne Ville, le FILTRE renvoie un tableau vide et affiche #CALC!.
Le piège
L'erreur ressemble à une panne, mais c'est le plus souvent un état normal, un filtre sans ligne à afficher ce jour-là. Gère-la avec le troisième argument de FILTRE plutôt qu'en retouchant ta formule, qui est juste.
L'astuce en plus
Un FILTRE sans ligne correspondante donne #CALC!, là où un RECHERCHEV ou un RECHERCHEX qui ne trouve pas sa valeur renvoie un #N/A, pas la même erreur pour la même idée de départ.

Comment corriger l'erreur #CALC! avec FILTRE

Pour corriger un #CALC! qui vient d'un FILTRE vide, renseigne son troisième argument, celui qu'Excel affiche quand aucune ligne ne correspond. La formule =FILTRE(A2:C50;B2:B50="Paris") devient =FILTRE(A2:C50;B2:B50="Paris";"Aucun client à Paris"), et la cellule montre ce texte clair à la place de l'erreur. Renseigne-le dès l'écriture de la formule, tu n'auras jamais la mauvaise surprise le jour où le filtre se vide.

Quand le #CALC! ne vient pas d'un filtre vide mais d'un autre calcul dynamique qu'Excel ne sait pas restituer, enveloppe la formule entière dans SIERREUR. La forme =SIERREUR(ta_formule;"") remplace alors l'erreur par la valeur de ton choix, et c'est le filet qui rattrape les cas que le troisième argument de FILTRE ne couvre pas.

Quelle différence entre #CALC! et #PROPAGATION!

#CALC! et #PROPAGATION! sont les deux erreurs propres au monde dynamique, et on les confond d'autant plus qu'elles frappent les mêmes fonctions. La différence tient en une phrase : #CALC! n'a aucun résultat à afficher, alors que #PROPAGATION! en a un, juste, mais ne trouve pas la place où le poser.

Un FILTRE qui ne ramène aucune ligne renvoie #CALC!, parce que le calcul aboutit à un tableau vide. Le même FILTRE qui trouve bien ses lignes mais bute sur une cellule déjà occupée renvoie #PROPAGATION!, parce que le résultat existe et n'a nulle part où se déverser. Pour libérer ce second cas, tout se joue sur la page dédiée à l'erreur #PROPAGATION!.

Le savais-tu ?
Cette erreur est récente, née avec les tableaux dynamiques d'Excel 365 et 2021. Sur Excel 2019 et les versions antérieures, elle ne peut pas apparaître, faute de fonctions comme FILTRE.
FAQ

Questions fréquentes sur l'erreur #CALC!

L'erreur #CALC! signifie qu'une formule dynamique a bien été calculée mais ne peut pas renvoyer de résultat valide. Le cas le plus fréquent est un FILTRE dont le critère ne correspond à aucune ligne : le résultat est un tableau vide qu'Excel ne sait pas afficher. Pour la corriger, ajoute un troisième argument à FILTRE pour gérer le cas "aucun résultat", ou enveloppe la formule dans SIERREUR.

Ressources

Du mot à la pratique

Tu sais maintenant ce que le mot veut dire. Reste à s’en servir : la formule, le fichier, et le cours qui remet tout dans l’ordre.

Tout le lexique