Fonction NA ExcelGuide Complet 2026 avec Exemples
NA() (Not Available en anglais) est une fonction unique en son genre : elle retourne volontairement l'erreur #N/A. Si ça te semble bizarre au premier abord, c'est normal ! Mais cette fonction est en réalité très utile pour marquer explicitement les données manquantes, indisponibles ou non applicables dans tes tableaux.
Dans ce guide, tu vas découvrir pourquoi et comment utiliser NA() dans des cas concrets du monde professionnel. Tu apprendras à gérer les données manquantes de manière élégante, à créer des graphiques qui ignorent les valeurs absentes, et à rendre tes formules plus robustes.
Syntaxe de la fonction NA
=NA()La fonction NA ne prend aucun paramètre. Elle retourne toujours l'erreur #N/A, qui signifie "Not Available" (non disponible). C'est la seule fonction Excel qui génère volontairement une erreur.
Comprendre la fonction NA et son utilisation
Fonction sans argument
NA() ne nécessite aucun argument. Les parenthèses vides sont obligatoires pour que Excel reconnaisse qu'il s'agit d'une fonction et non d'un nom de cellule. Dès que tu tapes =NA(), la cellule affiche immédiatement #N/A.
Cette simplicité est intentionnelle : NA() a un seul but, générer l'erreur #N/A de manière contrôlée et prévisible.
Pourquoi utiliser NA() ?
1. Marquer les données manquantes : Plutôt que de laisser une cellule vide ou d'écrire "N/A" en texte, NA() signale clairement qu'une valeur n'est pas disponible. Cela permet aux autres formules de détecter et gérer ces cas spécifiquement.
2. Contrôler l'affichage des graphiques : Les graphiques Excel ignorent automatiquement les cellules contenant #N/A, créant des discontinuités plutôt que d'afficher des zéros ou de relier des points éloignés.
3. Rendre les formules explicites : Dans une formule complexe, retourner NA() pour un cas non géré est plus clair qu'une cellule vide. Ça montre que tu as pensé au cas, mais qu'il n'est pas applicable.
4. Compatibilité internationale : #N/A est reconnue par toutes les versions d'Excel et dans toutes les langues. Contrairement à du texte comme "Non disponible", l'erreur reste détectable par les fonctions.
Astuce de pro : Utilise NA() avec la fonction SI pour créer des placeholders intelligents : =SI(A1=""; NA(); A1*2). Si A1 est vide, tu obtiens #N/A au lieu de 0, ce qui évite de fausser les moyennes et les graphiques.
Exemples pratiques pas à pas
Exemple 1 – Analyste financier : gérer les données trimestrielles incomplètes
Tu es analyste financier et tu prépares un rapport sur les résultats trimestriels. Le T4 n'est pas encore clos, donc tu n'as pas les données. Au lieu de laisser vide ou de mettre 0 (ce qui fausserait les calculs), tu utilises NA() pour marquer explicitement l'absence de données.
NA() indique clairement que la donnée T4 n'est pas encore disponible, sans fausser les moyennes.
| A | B | |
|---|---|---|
| 1 | Trimestre | Chiffre d'affaires |
| 2 | T1 2024 | 450 000 € |
| 3 | T2 2024 | 520 000 € |
| 4 | T3 2024 | 485 000 € |
| 5 | T4 2024 | #N/A |
=SI(B4=''; NA(); B4)Si tu calcules la moyenne avec =MOYENNE(B1:B4), Excel ignore automatiquement le #N/A et calcule la moyenne sur les 3 trimestres disponibles uniquement.
Exemple 2 – Chef de projet : suivre des jalons avec dates variables
Tu es chef de projet et tu suis l'avancement de ton projet sur un planning. Certaines phases n'ont pas encore de date de début car elles dépendent de l'achèvement de phases précédentes. Tu utilises NA() pour ces dates non applicables.
Les dates des jalons en attente affichent #N/A au lieu d'une date fictive ou d'une cellule vide.
| A | B | C | |
|---|---|---|---|
| 1 | Jalon | Date de début | Statut |
| 2 | Conception | 01/02/2024 | Terminé |
| 3 | Développement | 15/02/2024 | En cours |
| 4 | Tests | #N/A | En attente |
| 5 | Déploiement | #N/A | En attente |
=SI(C3='En attente'; NA(); B3)Cela évite de créer des graphiques de Gantt erronés avec des dates à 01/01/1900 ou des cellules vides qui pourraient être mal interprétées.
Exemple 3 – Data analyst : créer des graphiques sans données manquantes
Tu es data analyst et tu crées un graphique de l'évolution des ventes quotidiennes. Certains jours (weekend, jours fériés), il n'y a pas de ventes. Plutôt que d'afficher 0 (ce qui suggère une activité nulle), tu utilises NA() pour créer des discontinuités visuelles.
Le graphique ignorera automatiquement le jeudi fermé, créant une coupure visuelle plutôt qu'un zéro trompeur.
| A | B | C | |
|---|---|---|---|
| 1 | Date | Ventes | Jour |
| 2 | Lun 04/03 | 12 500 € | Ouvré |
| 3 | Mar 05/03 | 13 200 € | Ouvré |
| 4 | Mer 06/03 | 11 800 € | Ouvré |
| 5 | Jeu 07/03 | #N/A | Fermé |
| 6 | Ven 08/03 | 15 600 € | Ouvré |
=SI(C4='Fermé'; NA(); B4)Dans le graphique Excel, la courbe aura un espace le jeudi au lieu de descendre à zéro puis remonter, ce qui est plus honnête visuellement.
Exemple 4 – Contrôleur de gestion : marquer les budgets non alloués
Tu es contrôleur de gestion et tu gères les budgets de plusieurs départements. Certains départements n'ont pas encore reçu leur allocation budgétaire pour le trimestre. Au lieu de mettre 0€ (ce qui signifierait "pas de budget"), tu utilises NA() pour indiquer "budget non encore défini".
NA() distingue clairement 'pas de budget alloué' de 'budget de 0€'.
| A | B | C | |
|---|---|---|---|
| 1 | Département | Budget Q1 | Statut allocation |
| 2 | Marketing | 85 000 € | Validé |
| 3 | IT | 120 000 € | Validé |
| 4 | R&D | #N/A | En attente |
| 5 | RH | 45 000 € | Validé |
=SI(C3='En attente'; NA(); B3)Si tu calcules le budget total avec =SOMME(B1:B4), Excel ignore le #N/A et additionne uniquement les budgets validés (250 000 €), ce qui est le comportement souhaité.
Les erreurs fréquentes et comment les corriger
Confondre NA() avec le texte "#N/A"
Si tu tapes le texte "#N/A" entre guillemets dans une formule, Excel le traite comme du texte normal, pas comme une erreur. Les fonctions comme ESTNA() ne le détecteront pas, et les graphiques ne l'ignoreront pas.
Solution : Utilise toujours la fonction =NA() sans guillemets pour générer une vraie erreur #N/A qu'Excel peut reconnaître et traiter correctement.
Oublier les parenthèses de NA()
Si tu tapes =NA sans parenthèses, Excel affiche l'erreur #NOM? car il cherche une cellule ou une plage nommée "NA" qui n'existe pas.
Solution : Ajoute toujours les parenthèses vides : =NA(). Même si la fonction ne prend aucun argument, les parenthèses sont obligatoires pour indiquer à Excel qu'il s'agit d'une fonction.
NA() bloque les calculs en cascade
Si une formule fait référence à une cellule contenant #N/A, elle retourne aussi #N/A par propagation. Par exemple, =A1+B1 retourne #N/A si A1 ou B1 contient #N/A.
Solution : Utilise SI.NON.DISP() pour gérer spécifiquement les #N/A : =SI.NON.DISP(A1+B1; 0) retourne 0 si le calcul produit #N/A. Ou utilise SIERREUR() pour gérer toutes les erreurs : =SIERREUR(A1+B1; 0).
Astuces de pro pour utiliser NA()
Astuce 1 – Détecter les NA() dans une plage :
Utilise =NB.SI(A1:A10; "#N/A") pour compter combien de cellules contiennent #N/A dans ta plage. C'est utile pour vérifier rapidement combien de données te manquent.
Astuce 2 – Remplacer les vides par NA() automatiquement :
Crée une formule qui convertit les cellules vides : =SI(A1=""; NA(); A1). Applique-la à toute ta plage de données pour standardiser le marquage des valeurs manquantes.
Astuce 3 – Combiner avec RECHERCHEV :
Dans une RECHERCHEV, utilise NA() pour les cas non trouvés : =SI.NON.DISP(RECHERCHEV(A1; table; 2; FAUX); NA()). Cela différencie "non trouvé" d'une vraie erreur de formule.
Astuce 4 – Formater conditionnellement les NA() :
Applique une mise en forme conditionnelle avec la règle =ESTNA(A1) pour colorer les cellules contenant #N/A en gris clair. Cela les rend visuellement discrètes tout en restant détectables.
NA vs SIERREUR vs SI.NON.DISP
| Critère | NA() | SIERREUR() | SI.NON.DISP() |
|---|---|---|---|
| Objectif principal | Générer #N/A | Gérer toutes erreurs | Gérer uniquement #N/A |
| Nombre de paramètres | 0 | 2 | 2 |
| Type d'action | Créer une erreur | Intercepter les erreurs | Intercepter #N/A uniquement |
| Cas d'usage typique | Marquer données manquantes | Éviter affichage erreurs | Gérer RECHERCHEV non trouvée |
| Exemple de formule | =NA() | =SIERREUR(A1/B1; 0) | =SI.NON.DISP(RECHERCHEV(...); "") |
Utilise NA() quand tu veux créer volontairement une erreur pour marquer une absence de données. Utilise SIERREUR() ou SI.NON.DISP() quand tu veux intercepter et gérer les erreurs produites par d'autres formules.
Questions fréquentes
Pourquoi utiliser NA() au lieu de taper #N/A directement ?
NA() est une fonction qui génère l'erreur #N/A de manière contrôlée et intentionnelle. Elle garantit que l'erreur est volontaire, facilite la maintenance du code et fonctionne dans toutes les versions d'Excel. Taper #N/A manuellement peut créer des problèmes de compatibilité.
Comment NA() aide-t-elle avec les graphiques Excel ?
Les graphiques Excel ignorent automatiquement les cellules contenant #N/A, ce qui crée des discontinuités dans les courbes au lieu d'afficher un zéro. C'est idéal pour montrer des données manquantes sans fausser les tendances visuelles.
Peut-on tester si une cellule contient NA() ?
Oui ! Utilise ESTNA(cellule) qui retourne VRAI si la cellule contient #N/A. Tu peux aussi utiliser SI.NON.DISP(expression; valeur_alternative) pour gérer spécifiquement les erreurs #N/A sans affecter les autres types d'erreurs.
NA() peut-elle être utilisée dans des formules complexes ?
Absolument ! NA() est très utile dans les formules imbriquées pour signaler des cas non traités ou des données invalides. Par exemple, dans une RECHERCHEV, tu peux retourner NA() quand un critère n'est pas rempli au lieu de laisser une cellule vide.
Quelle est la différence entre NA() et SIERREUR() ?
NA() génère une erreur #N/A, tandis que SIERREUR() gère toutes les erreurs pour les remplacer par une valeur. Tu utilises NA() pour créer volontairement une erreur, et SIERREUR() pour intercepter et gérer les erreurs existantes.
Les fonctions similaires à NA
Deviens un pro d'Excel
Tu maîtrises maintenant NA() ! Rejoins Le Dojo Club pour découvrir comment combiner cette fonction avec d'autres formules avancées et gérer les erreurs comme un expert.
Essayer pendant 30 jours