La fonction NB.COUPONS (COUPNUM en anglais) calcule automatiquement le nombre de paiements de coupons restants entre la date de règlement et la date d'échéance d'une obligation. Que tu sois gestionnaire de portefeuille, analyste obligataire ou comptable financier, elle te fait gagner un temps précieux dans la planification des flux de trésorerie.
Concrètement, c'est elle qui compte les 20 versements d'un OAT 10 ans acheté aujourd'hui, qui compare les coupons restants de deux obligations pour évaluer leur duration respective, ou qui calcule le total des intérêts à recevoir pour clôturer un exercice. Plus besoin de compter à la main : la formule s'ajuste automatiquement quand tu modifies les dates.
Syntaxe de la fonction NB.COUPONS
=NB.COUPONS(règlement; échéance; fréquence; [base])Comprendre chaque paramètre de la fonction NB.COUPONS
Les quatre arguments se lisent comme une carte d'identité de l'obligation : d'abord le jour où tu l'achètes (règlement), puis le jour où elle arrive à terme (échéance), ensuite combien de fois par an elle te verse un coupon (fréquence), et enfin la convention de calcul des jours. Seul ce dernier, [base], est facultatif : si tu l'oublies, Excel applique la base 0 (30/360 américaine), ce qui n'est pas toujours la bonne pour une obligation européenne.
règlement
: la date d'achat de l'obligation, c'est-à-dire le jour où tu la paies et où elle entre dans ton portefeuilleC'est le point de départ du calcul du nombre de coupons restants.
Tu peux saisir cette date directement dans une cellule formatée en date, utiliser la fonction DATE(année;mois;jour) pour la construire dynamiquement, ou encore AUJOURDHUI() pour suivre les coupons restants en temps réel.
Astuce : Utilise toujours des références de cellules pour les dates plutôt que de les écrire en dur dans la formule. Cela rend tes modèles plus flexibles et plus faciles à mettre à jour quand les dates changent.
échéance
: la date à laquelle l'obligation arrive à maturité et où tu recevras le dernier coupon ainsi que le remboursement du capital (valeur nominale)L'écart entre la date de règlement et la date d'échéance détermine combien de paiements tu recevras.
NB.COUPONS effectue automatiquement ce calcul en tenant compte de la fréquence des paiements et de la convention de calcul des jours.
Attention : La date d'échéance doit impérativement être postérieure à la date de règlement. Si ce n'est pas le cas, Excel retourne l'erreur #NOMBRE!.
fréquence
: le nombre de fois par an où les coupons sont versésExcel n'accepte que trois valeurs : 1 pour des paiements annuels, 2 pour des paiements semestriels (le plus courant pour les obligations d'État et d'entreprises), et 4 pour des paiements trimestriels.
Ce paramètre est crucial car il détermine comment Excel découpe la période entre règlement et échéance pour compter les versements.
[base]
: la convention de calcul des jours utilisée pour le décompte des périodes(facultatif)Valeurs possibles : 0 ou omis = base US (NASD) 30/360 ; 1 = réel/réel (nombre exact de jours) ; 2 = réel/360 ; 3 = réel/365 ; 4 = européenne 30/360.
Si tu omets ce paramètre, Excel utilise automatiquement la base 0.
Astuce : Pour les obligations d'État françaises et européennes, utilise la base 1 (réel/réel). Pour les obligations d'entreprises américaines, la base 0 (30/360) est standard.
Exemples pratiques pas à pas
Gestionnaire de portefeuille : planifier les flux de coupons
Tu viens d'acheter une obligation d'État française pour le compte de tes clients. Cette obligation a une maturité de 10 ans et verse des coupons semestriels. Tu as besoin de savoir combien de paiements tu recevras pour planifier les flux de trésorerie du portefeuille.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Date de règlement | Date d'échéance | Fréquence | Formule | Résultat |
| 2 | 15/01/2024 | 15/01/2034 | 2 (semestriel) | =NB.COUPONS(A2;B2;C2;1) | 20 |
=NB.COUPONS(DATE(2024;1;15); DATE(2034;1;15); 2; 1)La fonction compte les paiements : 10 ans à raison de 2 par an donnent 20 coupons. Cette information te permet de créer un calendrier précis des flux entrants. Pour que le résultat se mette à jour selon la date du jour, remplace la date de règlement par AUJOURDHUI().
Analyste obligataire : évaluer une obligation en cours de vie
Tu analyses l'achat potentiel de deux obligations déjà émises. Tu dois déterminer combien de coupons il reste à percevoir entre la date d'achat envisagée et la date d'échéance finale pour calculer correctement le rendement actuariel et la duration de chaque titre.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Obligation | Règlement | Échéance | Fréquence | Coupons restants |
| 2 | Corporate Bond XYZ | 20/03/2024 | 20/03/2029 | 2 | 10 |
| 3 | Treasury Note ABC | 20/03/2024 | 20/03/2026 | 2 | 4 |
=NB.COUPONS(B2; C2; D2; 0)La fonction donne 10 coupons restants pour le Corporate Bond XYZ (5 ans à 2 par an) et 4 pour le Treasury Note ABC (2 ans à 2 par an). Plus une obligation a de coupons restants, plus sa duration sera élevée, ce qui impacte sa sensibilité aux variations de taux d'intérêt.
Comptable financier : provisionner les intérêts à recevoir
Tu dois provisionner les intérêts à recevoir et planifier les encaissements futurs pour la clôture de l'exercice. Connaître le nombre exact de coupons restants pour chaque obligation te permet de construire un échéancier précis.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Référence | Valeur nominale | Taux coupon | Règlement | Échéance | Nb coupons | Total à recevoir |
| 2 | OAT-2034 | 100 000 € | 3,5% | 01/06/2024 | 01/06/2034 | 20 | 70 000 € |
| 3 | CORP-2027 | 50 000 € | 4,0% | 01/06/2024 | 01/06/2027 | 6 | 12 000 € |
=NB.COUPONS(D2; E2; 2; 1)La fonction renvoie 20 coupons en F2 ; la colonne G multiplie ensuite valeur nominale × taux / 2 × nombre de coupons. Le calcul des provisions s'ajuste automatiquement quand tu modifies les dates ou la fréquence, sans jamais recompter à la main.
Astuce de pro : Pour suivre les coupons restants au fil du temps, utilise =NB.COUPONS(AUJOURDHUI(); E2; 2; 1) : le résultat diminue automatiquement à chaque coupon encaissé et te montre toujours la situation en temps réel.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction NB.COUPONS
Avec NB.COUPONS, c'est presque toujours un argument hors des clous qui bloque, et le symptôme le plus fréquent est #NOMBRE!. Il tombe dès que tu inverses les dates (échéance avant règlement), ou que tu tapes une fréquence qu'Excel refuse comme 12 ou 3 : seuls 1, 2 et 4 sont admis.
Les deux autres pannes sont plus discrètes : #VALEUR! quand une date est en réalité du texte mal reconnu, et #NOM? quand tu écris COUPNUM (le nom anglais) dans un Excel français.
Erreur #NOMBRE! sur les paramètres de date ou de fréquence
L'erreur #NOMBRE! apparaît dans trois cas : la date d'échéance est antérieure à la date de règlement, la fréquence n'est pas 1, 2 ou 4, ou le paramètre base n'est pas compris entre 0 et 4.
Solution : Vérifie que échéance est bien postérieure à règlement. Contrôle que fréquence vaut exactement 1, 2 ou 4, pas 12 ni 3. Si le paramètre base est renseigné, assure-toi qu'il est entre 0 et 4.
Erreur #VALEUR! à cause de dates en texte
Quand une cellule de date contient du texte (par exemple "15/01/2024" saisi avec des guillemets ou mal formaté), Excel ne reconnaît pas la valeur comme une date et retourne #VALEUR!.
Solution : Formate tes cellules de dates avec le format Date (Ctrl+1). Utilise la fonction DATE(année;mois;jour) pour construire les dates dynamiquement. Ne saisis jamais de dates entre guillemets directement dans la formule.
Erreur #NOM? parce que la fonction n'est pas reconnue
Si tu utilises le nom anglais COUPNUM dans une version française d'Excel (ou inversement), la fonction n'est pas reconnue et Excel retourne #NOM?.
Solution : Utilise NB.COUPONS dans Excel en français. Sur Google Sheets en anglais, la fonction s'appelle COUPNUM avec une syntaxe identique et le point-virgule comme séparateur d'arguments en paramètre régional français.
Astuces avancées avec NB.COUPONS
Combiner NB.COUPONS avec les fonctions financières complémentaires
NB.COUPONS est encore plus puissante quand tu la combines avec les autres fonctions obligataires : COUPON.DATE.PREC pour la date du dernier coupon payé, COUPON.DATE.SUIV pour le prochain versement, PRIX.TITRE pour le prix de l'obligation, et RENDEMENT.TITRE pour le rendement actuariel.
Une feuille de synthèse qui regroupe ces quatre fonctions avec NB.COUPONS te donne tous les indicateurs clés pour analyser ou comparer des obligations en quelques cellules.
Suivre les coupons restants en temps réel avec AUJOURDHUI
Pour que ton modèle se mette à jour automatiquement chaque jour, utilise AUJOURDHUI() comme date de règlement : =NB.COUPONS(AUJOURDHUI(); B2; 2; 1). Le résultat diminue automatiquement après chaque coupon encaissé.
Cette formule est parfaite pour les tableaux de bord de portefeuille que tu consultes régulièrement : tu vois toujours les coupons effectivement restants, pas ceux calculés à la date d'achat.
Questions fréquentes sur la fonction NB.COUPONS
Comment fonctionne le paramètre fréquence dans NB.COUPONS ?
Le paramètre fréquence indique le nombre de paiements de coupons par an. Les valeurs acceptées sont 1 pour un paiement annuel, 2 pour des paiements semestriels (le plus courant pour les obligations), et 4 pour des paiements trimestriels.
Ce paramètre est crucial car il détermine comment Excel découpe la période entre règlement et échéance pour compter les versements.
Quelle est la différence entre NB.COUPONS et FRACTION.ANNEE ?
NB.COUPONS compte le nombre de paiements de coupons entre deux dates et retourne toujours un entier (par exemple 5 coupons). FRACTION.ANNEE calcule la fraction d'année entre deux dates et retourne un nombre décimal (par exemple 2,5 années).
Les deux fonctions mesurent une même période sous des angles différents : l'une en nombre de versements, l'autre en proportion d'année.
Pourquoi NB.COUPONS me retourne une erreur #NOMBRE! ?
Cette erreur apparaît si la date d'échéance est antérieure à la date de règlement, si la fréquence n'est pas 1, 2 ou 4, ou si le paramètre base n'est pas entre 0 et 4.
Vérifie l'ordre de tes dates (règlement avant échéance) et la validité de tes paramètres. C'est souvent l'inversion accidentelle des deux dates qui cause cette erreur.
À quoi sert le paramètre base dans NB.COUPONS ?
Le paramètre base définit la convention de calcul des jours : 0 ou omis = base US (NASD) 30/360 ; 1 = réel/réel ; 2 = réel/360 ; 3 = réel/365 ; 4 = européenne 30/360.
Utilise 1 (réel/réel) pour les obligations d'État françaises et européennes. Pour les obligations d'entreprises américaines, la base 0 (30/360) est standard.
NB.COUPONS fonctionne-t-elle sur Google Sheets ?
Oui, la fonction s'appelle COUPNUM sur Google Sheets avec une syntaxe identique. Seul le séparateur d'arguments peut varier selon tes paramètres régionaux : en français, utilise le point-virgule.
Les résultats sont identiques entre Excel et Google Sheets pour les mêmes entrées.
Comment calculer les intérêts totaux à recevoir avec NB.COUPONS ?
Multiplie le nombre de coupons par le montant de chaque versement : =NB.COUPONS(D2;E2;2;1) * valeur_nominale * taux / 2 pour des coupons semestriels.
Par exemple, pour une obligation de 100 000 € à 3,5% avec 20 coupons restants, le total est 100 000 × 3,5% / 2 × 20 = 35 000 €. Cette formule te donne le montant brut avant actualisation.
Pour aller plus loin
Les fonctions similaires : FRACTION.ANNEE, DATE, AUJOURDHUI, JOURS, FIN.MOIS
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
