Qu'est-ce que la fonction CELLULE ?
CELLULE (CELL en anglais) te sert dès qu'une formule doit s'adapter toute seule au fichier dans lequel elle vit, plutôt que de coder en dur une adresse, un format ou un nom de feuille qui changera au prochain classeur copié. C'est la fonction à sortir quand tu veux qu'Excel te dise lui-même où il en est, sans devoir vérifier chaque cellule à la main.
C'est la fonction que les utilisateurs avancés adorent pour construire des systèmes auto-documentés : un en-tête qui affiche automatiquement le nom du fichier, un outil d'audit qui détecte les cellules mal formatées dans un rapport financier, ou des exercices interactifs qui reconnaissent si l'apprenant a saisi un nombre ou du texte. Moins connue que ses cousines, elle devient indispensable dès que tu veux que ton classeur soit conscient de lui-même.

Comprendre chaque paramètre de la fonction CELLULE
Le premier argument, c'est le type d'info que tu réclames, écrit en toutes lettres entre guillemets ("adresse", "format", "type"...). Chaque mot-clé doit tomber pile dans la liste que la fonction accepte, sans quoi tu récoltes un #VALEUR!. Le second, la référence, est techniquement facultatif, mais ne le saute jamais : sans lui, CELLULE pioche dans la dernière cellule que tu as touchée et te renvoie n'importe quoi.
type_info
: une chaîne de texte entre guillemets qui indique quel type d'information tu veux obtenirLes valeurs les plus utilisées :
"adresse" : adresse absolue de la cellule (ex: $A$1), "ligne" : numéro de ligne, "col" : numéro de colonne, "nomfichier" : chemin complet du fichier avec le nom de la feuille entre crochets, "contenu" : valeur de la cellule, "type" : "b" (vide), "l" (texte), "v" (valeur numérique), "largeur" : largeur de la colonne (Excel 365 en renvoie deux, la largeur puis VRAI si c'est la largeur par défaut), "format" : code de format numérique (ex: "M2" pour un montant monétaire à deux décimales, "S" pour le format standard).
Attention : Le mot-clé n'a pas besoin d'être traduit : Excel français accepte aussi bien "address" que "adresse", et "row" que "ligne". Le vrai piège, c'est que la liste des mots acceptés est arbitraire. "column" déclenche un #VALEUR! alors que "col" et "colonne" fonctionnent, et "fichier" échoue là où "nomfichier" passe. Vérifie le mot-clé exact plutôt que de le deviner.
[référence]
: la cellule à analyser(facultatif)Il est fortement recommandé de toujours spécifier ce paramètre pour éviter des résultats imprévisibles. Tu peux utiliser une référence directe comme A1, une référence nommée, ou le résultat d'une fonction comme INDIRECT.

Exemples pratiques pas à pas
Comment obtenir l'adresse d'une cellule avec la fonction CELLULE
Un collègue t'appelle parce qu'une valeur de paramétrage lui semble fausse, et vous perdez cinq minutes à vous mettre d'accord sur la cellule dont vous parlez. Ton tableau liste les paramètres avec leur module, leur type et leur valeur, et tu veux afficher en face de chaque ligne l'adresse exacte de la cellule qui porte la valeur. La fonction CELLULE va lire cette adresse dans la feuille et remplit la colonne d'un coup.
- 1Dans une cellule, écris
=CELLULE(. - 2En 1er argument : écris entre guillemets l'information que tu réclames,
"adresse". C'est ce mot-clé qui décide de tout le reste, puisque la même fonction renvoie une position, un format ou un chemin de fichier selon ce que tu écris ici. Les guillemets sont obligatoires parce que la fonction attend bien du texte à cet endroit, et non une référence à une cellule. - 3En 2ᵉ argument : clique sur la cellule à examiner,
D2. C'est elle qui porte la valeur199du premier paramètre, dans la quatrième colonne du tableau. La syntaxe présente cet argument comme facultatif, mais l'omettre ferait interroger la dernière cellule que tu as touchée, et l'adresse renvoyée changerait à chaque clic. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas. La cellule examinée suit les lignes et devient
D3, puisD4, jusqu'au dernier paramètre.
=CELLULE("adresse"; D2)D2 et renvoie sa position au format absolu, avec les dollars : $D$2. Recopiée vers le bas, elle suit chaque ligne et donne l'adresse de la valeur correspondante, sans que tu aies à compter les lignes toi-même.Comment afficher le chemin du fichier avec la fonction CELLULE
Ton tableau de paramétrage circule en plusieurs copies dans l'équipe, et quand quelqu'un t'envoie une capture d'écran, tu n'as aucun moyen de savoir de quel fichier elle sort. Tu veux qu'une ligne d'en-tête affiche en permanence le chemin complet du classeur et la feuille affichée, et qu'elle se corrige toute seule si le fichier est déplacé ou renommé. La fonction CELLULE va chercher cette information dans le classeur lui-même et l'écrit dans la cellule.
- 1Dans une cellule, écris
=CELLULE(. - 2En 1er argument : écris entre guillemets le mot-clé qui vise le classeur plutôt que le contenu de la cellule,
"nomfichier". C'est lui qui déclenche la lecture du chemin complet. Il s'écrit en un seul mot, et la liste des types acceptés ne suit aucune logique de langue, si bien que"fichier"seul renvoie un#VALEUR!. - 3En 2ᵉ argument : clique sur une cellule de la feuille que tu veux identifier,
A1. Elle sert uniquement d'ancre, car la fonction renvoie le chemin de la feuille où cette cellule se trouve, quel que soit ce qui est écrit dedans. C'est justement parce que le résultat ne dépend pas de ce contenu qu'on est tenté de sauter cet argument, et le chemin renvoyé serait alors celui de la dernière feuille touchée. - 4Ferme la parenthèse et appuie sur Entrée. Le classeur doit avoir été enregistré au moins une fois, sinon la formule ne renvoie rien du tout.
=CELLULE("nomfichier"; A1)Ctrl+Alt+F9.Comment extraire le nom de la feuille avec les fonctions CELLULE, STXT et TROUVE
Chaque mois, tu dupliques la même feuille de suivi et tu la renommes au nom du mois. Le titre affiché en haut, lui, reste celui du mois précédent tant que tu ne penses pas à le changer, et tu as déjà envoyé un rapport intitulé « Mars » rempli des chiffres d'avril. Tu veux que ce titre reprenne tout seul le nom de la feuille. La fonction CELLULE connaît ce nom, mais elle le livre collé au chemin du fichier : les fonctions TROUVE et STXT se chargent de n'en garder que la fin.
- 1Dans une cellule, écris
=STXT(. - 2En 1er argument : écris le texte à découper et referme-le,
CELLULE("nomfichier"; A1). La fonction CELLULE te rend le chemin complet du classeur, du dossier jusqu'au nom de la feuille collé tout à la fin. C'est dans cette longue chaîne que la découpe va se faire. - 3En 2ᵉ argument : écris la position du premier caractère à prendre et referme le calcul,
TROUVE("]"; CELLULE("nomfichier"; A1))+1. Le nom de la feuille commence juste après le crochet fermant, donc la fonction TROUVE repère ce crochet dans ce même chemin et le+1fait démarrer l'extraction au caractère suivant. - 4En 3ᵉ argument : saisis le nombre de caractères à prendre,
255. Un nom d'onglet ne dépasse jamais 31 caractères, et la fonction STXT s'arrête de toute façon à la fin du texte. Viser large te garantit donc de récupérer tout ce qui suit le crochet, quelle que soit la longueur du nom. - 5Ferme la parenthèse de la fonction STXT et appuie sur Entrée. Les deux appels à la fonction CELLULE et celui de la fonction TROUVE ont déjà été refermés dans leurs étapes.
=STXT(CELLULE("nomfichier"; A1); TROUVE("]"; CELLULE("nomfichier"; A1))+1; 255)Comment éviter l'erreur #VALEUR! de la fonction CELLULE avec la fonction SIERREUR
Une feuille de paramétrage que tu as construite circule dans l'équipe, et on te pose sans arrêt les mêmes questions dessus : quelle est l'adresse exacte de cette cellule, sa valeur est-elle bien un nombre, quel format lui est appliqué. Tu montes un petit inspecteur à côté du tableau : on tape le mot-clé voulu dans une colonne, et l'information sur la cellule D5, le montant en euros que tout le monde vérifie, s'affiche en face. Comme le mot-clé est saisi à la main, la fonction CELLULE doit encaisser les fautes de frappe sans laisser une erreur à l'écran.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris le calcul à tenter et referme-le,
CELLULE(A2; $D$5). Le mot-clé n'est plus écrit en dur dans la formule, car la fonction CELLULE va le lire dans la cellule où l'utilisateur le tape,A2. Les dollars de$D$5figent au contraire la cellule inspectée, pour que la recopie vers le bas ne la fasse pas glisser d'une ligne à l'autre. - 3En 2ᵉ argument : écris entre guillemets ce qui doit s'afficher à la place d'une erreur,
"Mot-clé inconnu". La dernière ligne du tableau montre à quoi ce filet sert, puisquecolumnne fait pas partie des mots-clés acceptés et aurait laissé un#VALEUR!à l'écran. - 4Ferme la parenthèse de la fonction SIERREUR et appuie sur Entrée, puis recopie la formule vers le bas sur les cinq mots-clés. Celle de la fonction CELLULE a déjà été refermée dans son étape.
=SIERREUR(CELLULE(A2; $D$5); "Mot-clé inconnu")column déclenche un #VALEUR! alors que col et colonne renvoient tous les deux le numéro de colonne.
Les erreurs fréquentes avec la fonction CELLULE
Trois choses font trébucher CELLULE, et elles tournent toutes autour du même duo : le mot-clé que tu lui passes et la cellule que tu vises. Un type_info que la fonction n'accepte pas ("column" ou "fichier") déclenche un #VALEUR!, l'absence du second argument te donne des résultats qui dansent, et le type "nomfichier" peut t'afficher un vieux nom tant que tu n'as pas forcé un recalcul.
#VALEUR! avec un type_info invalide ou mal orthographié
Le mot-clé demandé ne fait pas partie de la liste que la fonction CELLULE accepte, et cette liste n'obéit à aucune logique de langue. =CELLULE("column"; A1) déclenche un #VALEUR! alors que =CELLULE("row"; A1) fonctionne très bien, et =CELLULE("fichier"; A1) échoue là où =CELLULE("nomfichier"; A1) passe. Une faute de frappe comme "colone" produit évidemment la même erreur.
Solution : Reprends le mot-clé dans la liste des types acceptés au lieu de le traduire ou de le deviner. Retiens surtout les trois pièges qui piquent le plus : écris "col" ou "colonne" mais jamais "column", "nomfichier" mais jamais "fichier", "protege" mais jamais "proteger". Si le mot-clé vient d'une cellule que quelqu'un remplit à la main, enveloppe la formule dans SIERREUR comme dans l'exemple 4.
Résultat vide ou incorrect sans le deuxième paramètre
Sans référence explicite, CELLULE utilise la dernière cellule modifiée dans le classeur, ce qui change à tout moment. Les résultats varient de façon imprévisible selon l'ordre dans lequel tu cliques sur les cellules.
Solution : Spécifie toujours une référence explicite : =CELLULE("nomfichier"; A1). Même si la valeur de A1 n'a pas d'importance pour toi, cela ancre la formule et garantit un comportement stable.
Le nom du fichier ne se met pas à jour après un renommage
CELLULE est une fonction volatile mais elle ne se recalcule que dans certaines conditions. Si tu renommes le fichier ou changes son emplacement, la formule peut afficher l'ancien nom jusqu'au prochain recalcul complet.
Solution : Force un recalcul complet avec Ctrl+Alt+F9 (Windows) ou Cmd+Option+F9 (Mac). Tu peux aussi enregistrer le fichier, le fermer et le rouvrir. Pour automatiser cela, enregistre simplement le fichier : l'enregistrement déclenche toujours un recalcul de CELLULE("nomfichier").

CELLULE vs INDIRECT vs ADRESSE vs LIGNE/COLONNE
Prends CELLULE quand tu veux des infos *sur* la cellule elle-même, c'est-à-dire son format, sa largeur, le chemin du fichier, car c'est la seule des quatre à savoir lire ces métadonnées. Si tu cherches juste un numéro de ligne ou de colonne, LIGNE et COLONNE sont plus directes et, contrairement à CELLULE, ne sont pas volatiles. ADRESSE fabrique une adresse texte à partir de chiffres, et INDIRECT fait l'inverse en transformant ce texte en référence vivante.
| Critère | CELLULE | INDIRECT | ADRESSE | LIGNE / COLONNE |
|---|---|---|---|---|
| Usage principal | Extraire des métadonnées d'une cellule | Convertir du texte en référence active | Construire une adresse texte depuis des chiffres | Obtenir le numéro de ligne ou de colonne |
| Retourne du texte | ✅ Souvent (adresse, nomfichier) | ❌ Retourne une référence | ✅ Toujours | ❌ Retourne un nombre |
| Fonction volatile | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non |
| Infos sur format et fichier | ✅ Oui (format, largeur, chemin) | ❌ Non | ❌ Non | ❌ Non |
| Cas d'usage typique | Audit de format, en-tête dynamique, détection de type | Référence construite dynamiquement depuis du texte | Construire une référence texte depuis LIGNE/COLONNE | Numéros de ligne/colonne pour formules matricielles |
Questions fréquentes
CELLULE peut retourner plus de 10 types : "adresse" (adresse absolue), "col" (numéro de colonne), "ligne" (numéro de ligne), "contenu" (valeur de la cellule), "nomfichier" (chemin complet), "format" (code de format numérique), "largeur" (largeur de colonne), "parentheses" (1 si formaté avec parenthèses pour les négatifs), "prefixe" (préfixe d'alignement), "protege" (0 si non verrouillée), et "type" (b pour vide, l pour texte, v pour valeur).
CELLULE avec le type "nomfichier" est volatile mais ne se recalcule que lors d'un recalcul complet du classeur ou quand tu enregistres le fichier. Si tu viens de renommer ton fichier, appuie sur Ctrl+Alt+F9 pour forcer un recalcul complet et voir le nouveau chemin.
Non, CELLULE ne peut pas détecter si une cellule contient une formule. Elle te dit uniquement le type de résultat (texte, nombre, vide) mais pas son origine. Pour détecter une formule, utilise ESTFORMULE disponible depuis Excel 2013.
Pour aller plus loin
Continue sur ta lancée après la fonction CELLULE : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir




