Qu'est-ce que la fonction REND. DCOUPON. IRREG ?
REND.DCOUPON.IRREG (ODDLYIELD en anglais) te sert dès que RENDEMENT.TITRE donne un chiffre que tu sais faux, parce que la dernière période de ton titre ne suit plus le rythme régulier des coupons : c'est elle qui recalcule le rendement en tenant compte de cette période bancale plutôt que de l'ignorer.
Elle est essentielle pour les professionnels de la gestion obligataire qui évaluent des obligations proches de leur échéance ou avec des structures de remboursement non standard : obligation callable remboursée par anticipation, restructuration de dette, ou simple décalage de calendrier entre le dernier coupon et l'échéance.
Syntaxe
=REND.DCOUPON.IRREG(règlement; échéance; dernier_coupon; taux; prix; valeur_rachat; fréquence; [base])Clique sur un argument pour aller à son explication.
Attention au nom : la forme longue RENDEMENT.DCOUPON.IRREG n'existe pas et renvoie #NOM?. Seule l'abréviation REND.DCOUPON.IRREG est reconnue par Excel. L'ordre des dates est par ailleurs strict : dernier_coupon < règlement < échéance.

Comprendre chaque paramètre de la fonction REND.DCOUPON.IRREG
Les huit arguments suivent un ordre fixe, et les trois dates en tête doivent respecter la chaîne dernier_coupon < règlement < échéance, sinon tu récoltes un #NOMBRE!. Le dernier_coupon est l'argument qui fait toute la différence : c'est lui qui dit à Excel où s'arrête le rythme régulier et où commence la dernière période bancale.
Seul [base] est facultatif (la convention de jours, 30/360 US par défaut). Tout le reste est obligatoire, y compris la valeur_rachat que beaucoup laissent à 100 par réflexe alors qu'une prime de call peut la pousser à 102 ou 105.
règlement
: la date à laquelle tu achètes l'obligationC'est le point de départ pour le calcul des flux futurs. Elle doit être strictement postérieure à la date du dernier coupon régulier et antérieure à l'échéance.
Sur les marchés financiers, la date de règlement est généralement 2 jours ouvrés après la date de transaction. Utilise des références de cellules pour tes dates afin de pouvoir modifier facilement tes scénarios.
échéance
: la date de remboursement final de l'obligationL'intervalle entre le dernier coupon et cette date détermine si la dernière période est courte (moins d'une période normale) ou longue (plus d'une période normale).
Pour une obligation semestrielle dont le dernier coupon tombe le 15 novembre et l'échéance le 15 avril, la dernière période ne couvre que cinq mois au lieu de six.
dernier_coupon
: la date du dernier paiement d'intérêts régulier, avant le coupon final irrégulierC'est la dernière date de coupon normale du titre, et elle se situe forcément dans le passé par rapport à ton règlement.
Par exemple, pour une obligation semestrielle achetée le 15 janvier 2025 et remboursée le 15 avril 2025, le dernier coupon régulier est tombé le 15 novembre 2024.
Attention : Cette date doit être strictement antérieure au règlement. Un dernier_coupon postérieur au règlement, ou même exactement égal à lui, renvoie #NOMBRE!.
taux
: le taux de coupon annuel de l'obligation, exprimé en décimalPar exemple, 0,045 pour un coupon de 4,5 %. Le montant du dernier coupon sera proratisé selon la durée réelle de la dernière période.
Ce taux est fixe pendant toute la durée de vie de l'obligation, contrairement au rendement que la fonction calcule.
prix
: le prix d'achat de l'obligation pour 100 de nominal, hors intérêts courus (prix propre)Un prix de 99,80 signifie que l'obligation se négocie à 99,8 % de sa valeur nominale.
Attention : sur les marchés, le montant réellement payé correspond à ce prix propre augmenté des intérêts courus, calculés séparément avec INTERET.ACC. C'est bien le prix propre que la fonction attend.
valeur_rachat
: la valeur de remboursement à l'échéance pour 100 de nominalGénéralement 100, mais elle peut différer pour des obligations remboursables avec prime.
Pour une obligation callable remboursée avec prime, la valeur de rachat peut être 102 ou 105. Ce paramètre influence directement le rendement calculé, et l'oublier fausse tout le calcul du yield to call.
fréquence
: le nombre de paiements de coupons par an : `1` = annuel, `2` = semestriel, `4` = trimestrielCe paramètre détermine ce qu'est une période normale, et donc ce qui rend la dernière période irrégulière.
Avec une échéance qui tombe cinq mois après le dernier coupon, la période est courte si la fréquence est semestrielle, mais longue si elle est trimestrielle.
Attention : Les valeurs 1, 2 et 4 sont les seules valides. Toute autre valeur, comme 3 ou 12, renvoie #NOMBRE!.
[base]
: la convention de calcul des jours(facultatif)Valeurs possibles : 0 ou omis = 30/360 US, 1 = Réel/réel, 2 = Réel/360, 3 = Réel/365, 4 = 30/360 européen.
Ce paramètre compte pour le calcul précis du dernier coupon irrégulier, où le décompte exact des jours devient déterminant. Pour les obligations d'État françaises, oriente-toi vers 1 ou 3 selon le prospectus.

Exemples pratiques pas à pas
Comment calculer le rendement d'une obligation à dernière période irrégulière avec la fonction REND.DCOUPON.IRREG
Tu compares les cotations reçues sur une même obligation dont l'échéance ne tombe pas au rythme de ses coupons, et tu veux les ramener toutes à un rendement comparable. Le titre est réglé le 1er avril 2026, son dernier coupon régulier date du 15 mars 2026 et il sera remboursé le 1er janvier 2031 : sa dernière période ne suit plus le rythme semestriel habituel.
La fonction REND.DCOUPON.IRREG traduit chaque prix en rendement actuariel, en donnant à cette dernière période sa durée réelle.
- 1Dans une cellule, écris
=REND.DCOUPON.IRREG(. - 2En 1er argument : écris la date à laquelle l'achat est payé,
DATE(2026;4;1). Elle se place après le dernier coupon régulier, ce qui signifie que le titre est déjà entré dans sa dernière période, celle qui est irrégulière. - 3En 2ᵉ argument : écris la date de remboursement du capital,
DATE(2031;1;1). C'est ce jour que le porteur touche le coupon final en même temps que le nominal. - 4En 3ᵉ argument : écris la date du dernier versement régulier,
DATE(2026;3;15). C'est elle qui distingue cette fonction des autres, car elle marque où s'arrête le rythme normal des coupons, et elle se situe forcément derrière le règlement. - 5En 4ᵉ argument : saisis le coupon nominal annuel exprimé en décimal,
0,045. Il reste fixe pendant toute la vie du titre, contrairement au rendement que la fonction cherche. - 6En 5ᵉ argument : clique sur la cellule qui porte la cotation,
B2. C'est le seul argument qui pointe une cellule, puisque le prix change d'une ligne à l'autre, et il s'agit du prix propre, hors intérêts courus, pour 100 de nominal. - 7En 6ᵉ argument : saisis la valeur de remboursement au pair pour 100 de nominal,
100. C'est l'un des arguments les plus lourds de conséquences, comme le montre l'exemple suivant. - 8En 7ᵉ argument : saisis le nombre de coupons versés par an,
2. C'est lui qui définit ce qu'est une période normale, et donc ce qui rend la dernière période irrégulière. - 9En 8ᵉ argument : saisis la convention de décompte des jours,
1pour le réel/réel. C'est le seul argument facultatif, mais l'omettre ferait basculer le calcul en base0, la convention 30/360 américaine, qui ne compte pas les jours de la même façon. - 10Ferme la parenthèse et appuie sur Entrée.
=REND.DCOUPON.IRREG(DATE(2026;4;1); DATE(2031;1;1); DATE(2026;3;15); 0,045; B2; 100; 2; 1)98,50, le titre rend 4,9 %, davantage que son coupon de 4,5 % puisque la décote se récupère au remboursement ; payé 100,50, il retombe à 4,4 %. Le rendement descend quand le prix monte, jamais l'inverse.Comment calculer le rendement au call avec la fonction REND.DCOUPON.IRREG
Un émetteur annonce qu'il rembourse son obligation par anticipation le 15 octobre 2027, alors que le dernier coupon régulier est tombé le 1er juillet. Le titre cote 101,50 et le prospectus prévoit un rachat avec prime, mais ton fichier de suivi porte encore 100 en valeur de remboursement.
En plaçant la date de call en échéance et le prix de call en valeur de rachat, la fonction REND.DCOUPON.IRREG donne le rendement au call, et te montre au passage ce que coûte l'oubli de la prime.
- 1Dans une cellule, écris
=REND.DCOUPON.IRREG(. - 2En 1er argument : écris la date à laquelle l'achat est payé,
DATE(2027;8;1). Elle sépare le dernier coupon régulier de la date de remboursement, comme il se doit pour cette fonction. - 3En 2ᵉ argument : écris la date de call,
DATE(2027;10;15), et non la maturité contractuelle. Pour la fonction, un titre remboursé par anticipation s'éteint ce jour-là, et tout le calcul s'arrête là. - 4En 3ᵉ argument : écris la date du dernier coupon régulier,
DATE(2027;7;1). Elle reste en amont du règlement du 1er août, si bien que la dernière période court du 1er juillet au 15 octobre, soit trois mois et demi au lieu des six d'un titre semestriel. - 5En 4ᵉ argument : saisis le coupon nominal annuel,
0,05. Il est figé sur les trois lignes, tout comme le prix, pour que la comparaison reste honnête. - 6En 5ᵉ argument : saisis le prix propre payé pour 100 de nominal,
101,5. Le titre est le même et acheté au même prix sur les trois lignes, donc lui non plus n'explique pas l'écart des rendements. - 7En 6ᵉ argument : clique sur la cellule qui porte la valeur de remboursement,
A2. Elle prend tour à tour100,102puis105. C'est le seul argument qui varie, donc c'est lui seul qui explique l'écart considérable entre les trois rendements. - 8En 7ᵉ argument : saisis le nombre de coupons par an,
2, inchangé sur les trois lignes. - 9En 8ᵉ argument : saisis la convention de décompte des jours,
1pour le réel/réel. Le rendement est annualisé, ce qui explique l'ampleur des chiffres : un gain ou une perte encaissé sur deux mois et demi produit mécaniquement un taux annuel spectaculaire, dans un sens comme dans l'autre. - 10Ferme la parenthèse et appuie sur Entrée.
=REND.DCOUPON.IRREG(DATE(2027;8;1); DATE(2027;10;15); DATE(2027;7;1); 0,05; 101,5; A2; 2; 1)-2,32 % à 21,76 %. Racheté au pair, le titre payé 101,50 fait perdre de l'argent : la prime versée à l'achat n'est jamais récupérée, et sur un horizon de deux mois et demi cette perte s'annualise en rendement négatif. La prime de call renverse complètement le résultat.Comment éviter l'erreur #NOMBRE! de la fonction REND.DCOUPON.IRREG en ordonnant les dates
Ta colonne de rendements se remplit de #NOMBRE! sur un fichier où toutes les dates existent pourtant. En regardant de près, le dernier coupon régulier a été saisi comme un versement encore à venir, ce qui est la lecture la plus intuitive du mot « dernier » et pourtant l'inverse de ce qu'attend la fonction.
La fonction REND.DCOUPON.IRREG regarde derrière elle, pas devant : le dernier coupon régulier est celui qui est déjà tombé.
- 1Dans une cellule, écris
=REND.DCOUPON.IRREG(. - 2En 1er argument : clique sur la cellule qui porte la date de règlement,
C2. Elle varie avec le dernier coupon d'une ligne à l'autre pour isoler leur ordre, tout le reste étant figé. - 3En 2ᵉ argument : écris la date de remboursement,
DATE(2031;1;1). Elle est identique sur les trois lignes, donc jamais en cause dans les erreurs qui vont apparaître. - 4En 3ᵉ argument : clique sur la cellule qui porte la date du dernier coupon régulier,
B2. La première ligne la place au 15/03/2026, avant le règlement, et la fonction rend4,88 %; la deuxième la met au jour même du règlement et échoue en#NOMBRE!, car l'antériorité doit être stricte ; la troisième la place quinze jours après, si bien que le titre n'est pas encore dans sa dernière période et rend aussi#NOMBRE!, cas où c'est RENDEMENT.TITRE qui convient. - 5En 4ᵉ argument : saisis le coupon nominal annuel,
0,045, figé sur les trois lignes. - 6En 5ᵉ argument : saisis le prix propre pour 100 de nominal,
98,5, lui aussi identique partout. - 7En 6ᵉ argument : saisis la valeur de remboursement au pair pour 100 de nominal,
100. - 8En 7ᵉ argument : saisis le nombre de coupons par an,
2. - 9En 8ᵉ argument : saisis la convention de décompte des jours,
1pour le réel/réel. Avec l'échéance, le taux, le prix, la valeur de remboursement et la fréquence tous identiques sur les trois lignes, seul l'ordre des deux dates variables explique les erreurs. - 10Ferme la parenthèse et appuie sur Entrée.
=REND.DCOUPON.IRREG(C2; DATE(2031;1;1); B2; 0,045; 98,5; 100; 2; 1)dernier_coupon < règlement < échéance, et il est strict : un dernier coupon tombant le jour même du règlement suffit à déclencher #NOMBRE!. Le réflexe fautif consiste à saisir le dernier coupon comme une date à venir, alors que la fonction ne s'emploie que lorsque le titre est déjà entré dans sa dernière période.
Les erreurs fréquentes avec la fonction REND.DCOUPON.IRREG
Ici les ennuis viennent presque toujours des dates, et surtout d'une méprise sur le sens du dernier coupon. Beaucoup le saisissent comme une date future, alors qu'il est forcément derrière le règlement : c'est la cause numéro un du #NOMBRE!.
Le reste est plus classique : une fréquence autre que 1, 2 ou 4, des valeurs si extrêmes que le calcul itératif ne converge plus, ou des dates saisies en texte qui déclenchent un #VALEUR!.
Erreur #NOMBRE! avec un dernier coupon placé après le règlement
L'ordre obligatoire est dernier_coupon < règlement < échéance. L'erreur la plus fréquente consiste à saisir le dernier coupon comme une date à venir, par exemple un dernier coupon au 01/03/2028 pour un règlement au 15/03/2026. Un dernier coupon exactement égal au règlement échoue également.
Solution : Vérifie que la date du dernier coupon régulier précède strictement ton règlement. Si ce n'est pas le cas, le titre n'est pas encore entré dans sa dernière période irrégulière, et c'est RENDEMENT.TITRE qu'il te faut utiliser.
Erreur #NOMBRE! sur la fréquence ou par non-convergence
La fréquence n'accepte que 1, 2 ou 4. Par ailleurs, la méthode itérative ne converge pas quand les valeurs sont extrêmes : prix hors marché, taux de coupon aberrant, ou combinaison de paramètres économiquement incohérente.
Solution : Contrôle que la fréquence vaut strictement 1, 2 ou 4, que le prix reste dans une plage réaliste et que le taux de coupon est positif. Si tu testes des scénarios extrêmes, encapsule la formule dans SIERREUR(...; "Non convergent").
Erreur #NOM? avec le nom complet de la fonction
La forme longue RENDEMENT.DCOUPON.IRREG n'existe pas dans Excel et renvoie #NOM?. Seule l'abréviation REND.DCOUPON.IRREG est reconnue, ce qui surprend car les fonctions voisines utilisent le préfixe complet RENDEMENT.
Solution : Écris REND.DCOUPON.IRREG, sans le suffixe EMENT. La même règle vaut pour sa jumelle REND.PCOUPON.IRREG : la forme RENDEMENT.PCOUPON.IRREG n'existe pas davantage.

REND.DCOUPON.IRREG vs REND.PCOUPON.IRREG vs RENDEMENT.TITRE
Le tri se fait sur l'extrémité irrégulière de l'obligation. Si c'est le dernier coupon qui sort du rythme, en fin de vie du titre ou lors d'un remboursement anticipé, c'est REND.DCOUPON.IRREG : elle attend la date du dernier coupon régulier et compte 7 arguments obligatoires.
Si c'est le premier coupon qui est atypique, typiquement sur une nouvelle émission, bascule sur REND.PCOUPON.IRREG, qui exige deux dates de plus, l'émission et le premier coupon. Garde RENDEMENT.TITRE quand tous les coupons sont régulièrement espacés.
| Critère | REND.DCOUPON.IRREG | REND.PCOUPON.IRREG | RENDEMENT.TITRE |
|---|---|---|---|
| Coupon irrégulier traité | Dernier (fin de vie) | Premier (nouvelle émission) | Aucun (suppose régulier) |
| Dates spécifiques attendues | dernier_coupon | émission + premier_coupon | Aucune |
| Arguments obligatoires | 7 (+ base optionnelle) | 8 (+ base optionnelle) | 6 (+ base optionnelle) |
| Ordre des dates | dernier_coupon < règlement < échéance | émission < règlement < premier_coupon < échéance | règlement < échéance |
| Nom anglais | ODDLYIELD | ODDFYIELD | YIELD |
Questions fréquentes
Il survient quand la date d'échéance de l'obligation ne correspond pas au cycle normal des coupons. Le dernier coupon couvre alors une période plus courte ou plus longue que les précédentes. Par exemple, une obligation semestrielle dont le dernier coupon régulier tombe le 15 novembre et l'échéance le 15 avril a une dernière période de cinq mois au lieu de six.
C'est presque toujours l'ordre des dates. La fonction exige dernier_coupon < règlement < échéance : le dernier coupon régulier doit être derrière toi, pas devant.
Si ton règlement précède le dernier coupon régulier, l'obligation n'est pas encore dans sa dernière période et REND.DCOUPON.IRREG ne s'applique pas. Utilise RENDEMENT.TITRE dans ce cas.
Le D signifie Dernier (ODDLYIELD), le P signifie Premier (ODDFYIELD). Ce ne sont pas des variantes du même calcul, contrairement à ce qu'on lit parfois. REND.DCOUPON.IRREG traite l'irrégularité de fin de vie avec 7 arguments obligatoires. REND.PCOUPON.IRREG traite l'irrégularité de début de vie et réclame en plus la date d'émission et celle du premier coupon, soit 8 arguments obligatoires.
Parce que ce nom n'existe pas. Excel ne reconnaît que la forme abrégée REND.DCOUPON.IRREG, sans le suffixe EMENT.
C'est déroutant car les fonctions voisines s'écrivent RENDEMENT.TITRE ou RENDEMENT.BON.TRESOR. Les deux fonctions à coupon irrégulier font exception et exigent l'abréviation REND.
Oui, et c'est même l'un de ses usages les plus utiles. Il suffit d'utiliser la date de call comme échéance et la valeur de remboursement anticipé comme valeur de rachat. Comme une date de call crée presque toujours une dernière période irrégulière, REND.DCOUPON.IRREG donne un rendement au call précis là où RENDEMENT.TITRE ferait une approximation.
L'écart dépend de l'ampleur de l'irrégularité, et il est souvent plus modeste qu'on ne le croit. Sur l'obligation de l'exemple 1, dont la dernière période fait cinq mois au lieu de six, on mesure 5,27 % contre 5,25 %, soit environ 2 points de base. Cela reste significatif en gestion professionnelle : sur un portefeuille de 100 millions d'euros, 2 points de base représentent 20 000 €.
Pour aller plus loin
Continue sur ta lancée après la fonction REND.DCOUPON.IRREG : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



