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.
Concrètement, c'est elle qui signale qu'un trimestre n'est pas encore clôturé, qu'une date de jalon reste à définir, qu'un budget n'est pas encore alloué, ou qu'un graphique ne doit pas afficher un zéro trompeur à la place d'une donnée absente.
Syntaxe de la fonction NA
=NA()Les parenthèses vides sont obligatoires : sans elles, Excel cherche une plage nommée « NA » et renvoie #NOM? à la place.
Comprendre chaque paramètre de la fonction NA
aucun paramètre
: nA() n'accepte aucun argument(facultatif)Elle a un seul rôle : générer l'erreur #N/A de manière contrôlée et prévisible.
Cette simplicité est intentionnelle. Dès que tu tapes =NA(), la cellule affiche immédiatement #N/A. Les autres formules qui font référence à cette cellule propagent l'erreur, sauf si tu les protèges avec ESTNA(), SI.NON.DISP() ou SIERREUR().
Astuce : Utilise =SI(A1=""; NA(); A1) pour convertir les cellules vides en #N/A : tu évites ainsi les zéros qui faussent les moyennes et les graphiques.
Exemples pratiques pas à pas
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.
| 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)La formule affiche #N/A tant que la cellule T4 est vide. L'avantage : une moyenne calculée sur la colonne ignore automatiquement le #N/A et porte sur les 3 trimestres disponibles uniquement. Ton rapport reste juste sans aucune manipulation supplémentaire.
Chef de projet : suivre des jalons avec dates variables
Tu es chef de projet et tu suis l'avancement 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. Mettre une date fictive ou laisser vide créerait des graphiques de Gantt erronés.
| 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)Ici, la formule affiche #N/A pour les jalons en attente, au lieu d'une date à 01/01/1900 ou d'une cellule vide qu'Excel interpréterait comme zéro. Elle se met à jour automatiquement dès que tu changes le statut.
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. Afficher 0 suggèrerait une activité nulle, ce qui fausserait la lecture des tendances.
| 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)Ici, la formule renvoie #N/A pour le jeudi fermé. Le graphique Excel ignore automatiquement cette valeur et crée une coupure visuelle dans la courbe plutôt qu'une descente à zéro puis une remontée, ce qui est plus honnête et plus lisible pour ton audience.
Astuce de pro : Dans les options du graphique, règle « Cellules masquées et vides » sur « Connecter les points de données par une ligne » si tu veux une courbe continue, ou « Vide » pour afficher la discontinuité.
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 n'ont pas encore reçu leur allocation pour le trimestre. Mettre 0 € signifierait « pas de budget », ce qui est différent de « budget non encore défini ».
| 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)Ici, la formule renvoie #N/A pour le budget en attente, rendant la distinction claire avec un vrai 0 €. Un total calculé sur la colonne ignore le #N/A et additionne uniquement les budgets validés (250 000 €), le comportement attendu pour ton reporting.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction NA
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. ESTNA() ne le détectera 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 #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 qu'Excel la reconnaisse comme 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 intercepter toutes les erreurs : =SIERREUR(A1+B1; 0).
NA vs SIERREUR vs SI.NON.DISP
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.
| Critère | NA() | SIERREUR() | SI.NON.DISP() |
|---|---|---|---|
| Objectif principal | Générer #N/A | Gérer toutes les 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 l'affichage d'erreurs | Gérer RECHERCHEV non trouvée |
| Exemple | `=NA()` | `=SIERREUR(A1/B1; 0)` | `=SI.NON.DISP(RECHERCHEV(...); "")` |
Astuces avancées avec NA
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 avant de produire un rapport.
Tu peux aussi afficher ce compteur dans un tableau de bord pour alerter que des saisies sont encore attendues.
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, surtout après un import CSV.
Combine avec la mise en forme conditionnelle =ESTNA(A1) pour colorer ces cellules en gris clair : elles restent discrètes mais repérables d'un coup d'oeil.
Combiner avec RECHERCHEV pour différencier les cas
Dans une RECHERCHEV, tu peux propager intentionnellement le #N/A pour les codes non trouvés : =SI.NON.DISP(RECHERCHEV(A1; table; 2; FAUX); NA()). Cela distingue « code non trouvé » (propagé comme #N/A attendu) d'une vraie erreur de formule dans ton tableau.
Utilise ensuite ESTNA() dans une colonne de contrôle pour repérer les lignes à compléter.
Questions fréquentes sur la fonction NA
Pourquoi utiliser NA() au lieu de taper #N/A directement ?
NA() génère l'erreur #N/A de manière contrôlée et reconnue par Excel. Taper "#N/A" en texte brut crée une chaîne de caractères ordinaire : ESTNA() ne la détecte pas et les graphiques ne l'ignorent pas.
NA() garantit que l'erreur est traitée par toutes les fonctions de gestion d'erreurs et fonctionne de manière identique dans toutes les versions d'Excel, toutes langues confondues.
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. Un zéro suggèrerait une valeur réelle de zéro, alors que #N/A signale clairement une absence de données.
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.
Pour une gestion plus large, SIERREUR() intercepte toutes les erreurs, pas seulement #N/A.
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 un SI, tu peux retourner NA() quand aucun cas ne correspond plutôt que de laisser une cellule vide.
Cela rend tes formules plus transparentes : toute valeur #N/A signale qu'un cas a été volontairement non traité, pas un oubli.
Quelle est la différence entre NA() et SIERREUR() ?
NA() génère une erreur #N/A, tandis que SIERREUR() intercepte les erreurs existantes pour les remplacer par une valeur de ton choix.
Tu utilises NA() pour créer volontairement une erreur et marquer une absence de données. Tu utilises SIERREUR() en aval pour empêcher que cette erreur ou d'autres s'affichent dans tes cellules de résultat.
Pour aller plus loin
Les fonctions similaires : ESTNA, SI.NON.DISP, SIERREUR, ESTERREUR, RECHERCHEV
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
