TYPE (TYPE en anglais aussi) est une fonction Excel d'information peu connue mais redoutablement utile : elle retourne un code numérique qui identifie le type de données d'une valeur. Un nombre, du texte, une valeur logique, une erreur, un tableau, chacun a son propre code.
Concrètement, c'est elle qui te permet de valider automatiquement des imports de données avant traitement, de détecter les erreurs cachées dans un rapport de 12 filiales, de créer un système de contrôle qualité visuel pour les fichiers partagés, ou de déboguer des formules complexes en identifiant précisément où le type de données ne correspond pas à ce que tu attendais.
Syntaxe de la fonction TYPE
=TYPE(valeur)TYPE retourne 1 pour les cellules vides (Excel les traite comme des zéros). Pour tester si une cellule est vide, utilise ESTVIDE() à la place.
Comprendre chaque paramètre de la fonction TYPE
valeur
: la valeur ou la référence de cellule dont tu veux identifier le typeÇa peut être une valeur directe comme 100, une référence comme A1, ou même une formule comme SOMME(A1:A10). TYPE analyse le résultat final, pas la formule elle-même.
Si tu passes une plage multi-cellules comme A1:A10, TYPE retourne le code du type de la première cellule en haut à gauche de la plage. Pour analyser toute une colonne, copie la formule =TYPE(A1) sur chaque ligne ou, sous Excel 365, utilise =TRANSFORMER(A1:A10; LAMBDA(x; TYPE(x))) pour un tableau dynamique.
Astuce : Combine TYPE avec CHOISIR() pour afficher des messages personnalisés selon le type : =CHOISIR(TYPE(A1); "Nombre"; "Texte"; ""; "Logique"). C'est bien plus lisible pour les utilisateurs que d'afficher les codes 1, 2 ou 4.
Pas envie d'écrire la formule TYPE à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Data analyst : valider l'import de données avant traitement
Tu es data analyst et tu importes régulièrement des fichiers CSV dans Excel. Le problème : certaines colonnes qui devraient contenir des nombres arrivent parfois en format texte, ce qui casse toutes tes formules. Tu veux créer un système de validation automatique avant de lancer tes traitements.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | ID Produit | Prix | Type détecté | Statut |
| 2 | P001 | 29.99 | 1 | ✅ OK |
| 3 | P002 | "49.90" | 2 | ❌ TEXTE |
| 4 | P003 | 15.50 | 1 | ✅ OK |
| 5 | P004 | "PRIX" | 2 | ❌ TEXTE |
=SI(TYPE(B2)=1; "✅ OK"; "❌ TEXTE")Ici, TYPE teste si la cellule B2 contient bien un nombre (code 1). Si ce n'est pas le cas, le SI signale le problème immédiatement. Avec cette technique, tu identifies instantanément les lignes problématiques dans un fichier de 10 000 lignes au lieu de chercher à la main.
Contrôleur financier : détecter les erreurs cachées dans les rapports
Tu es contrôleur financier et tu consolides les rapports de 12 filiales. Parfois, des formules retournent #N/A ou #DIV/0! à cause de données manquantes, mais elles sont masquées par un formatage conditionnel. Tu veux scanner automatiquement toutes les cellules pour identifier les erreurs cachées avant d'envoyer le reporting au directoire.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Filiale | CA Q1 | Croissance | Contrôle |
| 2 | Paris | 450 000 € | 12% | ✅ |
| 3 | Lyon | 380 000 € | #DIV/0! | ⚠️ ERREUR |
| 4 | Marseille | 290 000 € | 8% | ✅ |
| 5 | Lille | 0 € | #N/A | ⚠️ ERREUR |
=SI(TYPE(C2)=16; "⚠️ ERREUR"; "✅")Le code 16 correspond à une erreur : la fonction détecte ainsi toutes les erreurs Excel quel que soit leur type. Tu peux même créer un compteur global avec =NB.SI(D:D; "⚠️ ERREUR") pour savoir immédiatement combien d'erreurs doivent être corrigées avant validation.
Chef de projet : créer un système de validation de formulaire
Tu es chef de projet et tu as créé un fichier Excel que ton équipe doit remplir chaque semaine. Tu veux t'assurer que les utilisateurs entrent les bons types de données : des nombres dans les colonnes de budget, du texte dans les descriptions. TYPE te permet de créer un système de validation visuel.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Description | Budget | Type attendu | Validation |
| 2 | Serveur cloud | 1200 | Nombre | ✅ Conforme |
| 3 | Licences | Mille euros | Nombre | ❌ Texte détecté |
| 4 | Formation | 2500 | Nombre | ✅ Conforme |
=SI(TYPE(B2)=1; "✅ Conforme"; "❌ Texte détecté")Combine cette formule avec une mise en forme conditionnelle (fond rouge si la cellule affiche « ❌ Texte détecté ») et tes utilisateurs verront immédiatement leurs erreurs de saisie. Plus besoin de vérifier manuellement 50 lignes chaque semaine.
Développeur Excel : créer une fonction de débogage avancée
Tu es développeur de solutions Excel et tu crées des fichiers complexes avec des dizaines de formules imbriquées. Quand quelque chose ne fonctionne pas, tu veux diagnostiquer rapidement quel type de données chaque formule intermédiaire retourne.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Formule | Résultat | Type | Diagnostic |
| 2 | =SOMME(A1:A5) | 1250 | 1 | Nombre ✓ |
| 3 | =RECHERCHEV() | #N/A | 16 | Erreur ! |
| 4 | =CONCATENER() | "Texte" | 2 | Texte ✓ |
| 5 | =SI(A1>0) | VRAI | 4 | Logique ✓ |
=CHOISIR(TYPE(B2); "Nombre"; "Texte"; ""; "Logique"; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; "Erreur")Combiner CHOISIR avec TYPE permet d'afficher des messages lisibles au lieu des codes 1, 2, 4, 16. Cette technique de diagnostic t'évite d'ouvrir la fenêtre d'évaluation de formule à chaque fois : tu vois d'un coup d'œil où le type de données ne correspond pas à ce que tu attendais.
Astuce de pro : Crée une colonne de diagnostic temporaire avec =TYPE(cellule) à côté de chaque formule intermédiaire pour identifier rapidement où le résultat attendu diverge. Supprime ces colonnes une fois le débogage terminé.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction TYPE
Avec TYPE, les couacs ne viennent presque jamais d'une faute de frappe : ils viennent de ce qu'Excel range dans la même case que toi mentalement. Le plus fréquent, c'est la cellule vide qui renvoie 1 (nombre) parce qu'Excel la lit comme un zéro, alors tu crois avoir détecté une valeur là où il n'y a rien.
Les autres pièges suivent la même logique : une date qui rend 1 au lieu d'un code « date », ou une plage A1:A10 dont seule la première cellule est analysée. Garde en tête que TYPE juge le résultat tel qu'Excel le voit, pas tel que tu l'imagines.
Utiliser TYPE pour détecter les cellules vides
=TYPE(A1) retourne 1 (nombre) même si A1 est vide. Excel considère une cellule vide comme ayant la valeur 0, donc TYPE retourne 1.
Solution : Utilise =ESTVIDE(A1) pour tester les cellules vides, ou =SI(A1=""; "Vide"; "Pleine"). TYPE n'est pas fait pour détecter les cellules vides.
Confondre TYPE avec ESTNUM dans les conditions
=SI(TYPE(A1); "OK"; "Erreur") affiche toujours « OK » car TYPE retourne toujours un nombre (1, 2, 4, 16…) et tout nombre différent de 0 est considéré comme VRAI par SI.
Solution : Écris =SI(TYPE(A1)=1; "Nombre"; "Autre") pour comparer le code retourné. Ou utilise directement =SI(ESTNUM(A1); "OK"; "Erreur") qui est plus lisible pour un test simple.
Oublier que les dates sont des nombres pour Excel
Tu veux identifier les cellules contenant des dates avec TYPE, mais tu obtiens 1 (nombre). Excel stocke les dates comme des nombres (nombre de jours depuis le 01/01/1900).
Solution : Pour identifier les dates, combine plusieurs tests : =ET(TYPE(A1)=1; A1>0; A1<2958466) (2958466 correspond au 31/12/9999). Vérifie aussi le format de cellule si tu as besoin d'une précision absolue.
Passer une plage entière à TYPE sans formule matricielle
=TYPE(A1:A10) ne retourne que le type de A1, pas un tableau des types de chaque cellule. TYPE analyse uniquement la première valeur d'une plage multi-cellules.
Solution : Copie =TYPE(A1) sur chaque ligne pour analyser chaque cellule. Sous Excel 365, utilise =TRANSFORMER(A1:A10; LAMBDA(x; TYPE(x))) pour créer un tableau dynamique des types.
TYPE vs ESTNUM vs ESTVIDE vs ESTERREUR
Sors TYPE quand une seule cellule peut contenir plusieurs natures de données et que tu veux les distinguer d'un coup : son code numérique sépare nombre (1), texte (2), logique (4) et erreur (16), là où les fonctions EST… ne répondent que par VRAI/FAUX sur une seule question.
Si tu n'as qu'une question précise, prends la fonction dédiée : ESTNUM pour « est-ce un nombre ? », ESTERREUR pour piéger une erreur, et surtout ESTVIDE pour les cellules vides, que TYPE confond avec un nombre.
| Critère | TYPE | ESTNUM | ESTVIDE | ESTERREUR |
|---|---|---|---|---|
| Type de retour | Code numérique (1-128) | VRAI/FAUX | VRAI/FAUX | VRAI/FAUX |
| Détecte les nombres | ✅ Code 1 | ✅ VRAI si nombre | ❌ Non | ❌ Non |
| Détecte le texte | ✅ Code 2 | ❌ Retourne FAUX | ❌ Non | ❌ Non |
| Détecte les erreurs | ✅ Code 16 | ❌ Retourne FAUX | ❌ Non | ✅ VRAI si erreur |
| Détecte cellules vides | ❌ Retourne 1 (nombre) | ❌ Retourne FAUX | ✅ VRAI si vide | ❌ Non |
| Détecte VRAI/FAUX | ✅ Code 4 | ❌ Retourne FAUX | ❌ Non | ❌ Non |
| Cas d'usage principal | Identifier tous types | Test simple nombre | Test cellule vide | Gestion d'erreurs |
Astuces avancées avec TYPE
Créer un rapport de qualité de données automatique
Combine TYPE avec NB.SI pour compter combien de cellules de chaque type tu as dans une colonne : =NB.SI(D:D; 2) compte les textes, =NB.SI(D:D; 16) compte les erreurs. Applique =TYPE(A1) sur toute la colonne A dans une colonne auxiliaire, puis résume avec NB.SI.
En quelques secondes, tu sais combien de cellules sont dans le mauvais format avant même de lancer tes calculs.
Nettoyer automatiquement les imports de données
Crée une formule qui convertit selon le type détecté : =SI(TYPE(A1)=2; CNUM(A1); A1). Si la valeur est du texte (code 2), elle est convertie en nombre ; sinon la valeur d'origine est conservée.
Cette astuce est particulièrement efficace après un import CSV où les colonnes numériques arrivent parfois en format texte.
Déboguer une formule imbriquée étape par étape
Dans une formule imbriquée, crée des colonnes intermédiaires avec =TYPE(résultat_intermédiaire) pour chaque étape : tu vois immédiatement où le type de données ne correspond pas à ce que tu attends.
Bien plus rapide que d'ouvrir l'outil « Évaluer la formule » à chaque fois.
Questions fréquentes sur la fonction TYPE
Quelles sont les valeurs retournées par TYPE et que signifient-elles ?
TYPE retourne 6 codes différents : 1 pour un nombre (y compris les dates), 2 pour du texte, 4 pour une valeur logique (VRAI/FAUX), 16 pour une erreur (#DIV/0!, #N/A, etc.), 64 pour un tableau de valeurs, et 128 pour une valeur composée.
Ces codes te permettent d'identifier programmatiquement le type de données dans tes formules ou tes systèmes de validation.
Pourquoi TYPE retourne 1 pour une date alors que c'est une date ?
Excel stocke les dates comme des nombres (le nombre de jours depuis le 1er janvier 1900). Pour Excel, une date n'est qu'un nombre avec un formatage spécial. TYPE retourne donc 1 car techniquement c'est un nombre.
Pour détecter les dates, combine TYPE avec le format de cellule ou utilise des tests conditionnels sur la plage de valeurs numériques attendues.
Comment utiliser TYPE pour détecter une cellule vide ?
TYPE ne détecte pas les cellules vides correctement : une cellule vide retourne 1 (nombre). Utilise plutôt ESTVIDE() qui retourne VRAI si la cellule est vide, FAUX sinon.
C'est une erreur courante qui peut casser tes formules de validation si tu te bases sur TYPE pour détecter les cellules non renseignées.
TYPE ou ESTNUM : quelle fonction choisir pour vérifier si c'est un nombre ?
Ça dépend de ce que tu veux faire. ESTNUM retourne VRAI/FAUX, parfait pour un test dans un SI. TYPE retourne le code 1, utile quand tu veux distinguer plusieurs types différents avec CHOISIR ou plusieurs SI.
Pour un simple test « est-ce un nombre ? », ESTNUM est plus lisible. Pour un système qui gère plusieurs types à la fois, TYPE est plus puissant.
TYPE peut-elle identifier le type d'une formule qui retourne une erreur ?
Oui. Si ta formule retourne #DIV/0!, #N/A, #VALEUR! ou toute autre erreur, TYPE retournera 16. C'est utile pour créer des systèmes de gestion d'erreurs personnalisés ou pour déboguer des fichiers complexes sans ouvrir manuellement chaque cellule.
Tu peux combiner TYPE avec SI pour afficher un message spécifique quand une erreur est détectée, au lieu d'utiliser SIERREUR qui masque toutes les erreurs sans distinction.
Pour aller plus loin
Les fonctions similaires : ESTNUM, ESTVIDE, ESTERREUR, ESTTEXTE, ESTLOGIQUE
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

