Qu'est-ce que la fonction PRIX. FRAC ?
PRIX.FRAC (DOLLARFR en anglais) te sert quand un prix calculé et stocké en décimal doit ressortir dans la notation qu'attend une contrepartie ou un système américain, sans que tu aies à faire la conversion à la main à chaque cotation.
Concrètement, c'est elle qui transforme le 100,50 stocké dans ta base de données en 100.16 (notation 32èmes standard des T-Bonds), prépare des fiches de prix en format fractionnaire pour tes appels avec des clients institutionnels américains, ou automatise le reporting au format obligatoire pour une maison-mère américaine.

Comprendre chaque paramètre de la fonction PRIX.FRAC
PRIX.FRAC attend ses deux arguments dans un ordre précis : d'abord le prix décimal que tu veux convertir, ensuite le dénominateur de la fraction (8, 16, 32…). Les deux sont obligatoires, il n'y a pas de valeur par défaut : oublier la fraction et écrire =PRIX.FRAC(100,5) ne donnera pas un format en 32èmes par hasard, Excel te réclamera le second argument.
prix_décimal
: le prix exprimé en format décimal que tu souhaites convertir en format fractionnaireIl s'agit du nombre que tu veux transformer pour l'afficher selon les conventions du marché américain.
Par exemple, si un prix de 100,50 dollars doit être affiché en 32èmes (comme pour les obligations du Trésor US), c'est ce nombre que tu places en premier paramètre. Ce paramètre accepte les nombres positifs et négatifs.
fraction
: le dénominateur à utiliser pour la partie fractionnaireIl s'agit du nombre par lequel tu divises l'unité. Les valeurs les plus courantes sur les marchés américains sont 8, 16, 32 et 128.
Par exemple, avec 32 comme fraction, le résultat est exprimé en 32èmes. Un prix de 100,5 est converti en 100.16, où 16 représente le numérateur de la fraction 16/32. Attention : ce 16 n'est pas une décimale, c'est bien le numérateur.
Attention : Le dénominateur doit être un entier strictement positif. Excel retourne une erreur si tu utilises 0, un nombre négatif ou un nombre décimal.

Exemples pratiques pas à pas
Comment convertir un prix décimal en 32e avec la fonction PRIX.FRAC
Ta maison mère new-yorkaise attend tes prix obligataires dans la notation du marché américain, en trente-deuxièmes de point, quand ton système les stocke en décimal. Envoyer 100,5 là où le marché lit 100,16 fait passer ton prix pour une tout autre valeur et déclenche des allers-retours pénibles avec le desk. La fonction PRIX.FRAC réécrit chaque prix décimal dans la notation attendue par tes contreparties.
- 1Dans une cellule, écris
=PRIX.FRAC(. - 2En 1er argument : clique sur la cellule qui porte le prix tel qu'Excel le calcule,
B2. Elle vaut100,5, une vraie valeur numérique avec laquelle tu peux encore additionner ou multiplier. - 3En 2ᵉ argument : saisis le dénominateur dans lequel la place exprime ses cotations,
32pour les T-Bonds. C'est lui qui transforme le demi-point en16plutôt qu'en50. - 4Ferme la parenthèse et appuie sur Entrée.
=PRIX.FRAC(B2; 32)100 et convertit le reste en trente-deuxièmes : un demi-point vaut 16/32, d'où l'affichage 100,16. Ce 16 compte des trente-deuxièmes et non des centièmes, ce qui rend le résultat parfait pour un écran de cotation et inutilisable pour un calcul.Comment adapter le dénominateur avec la fonction PRIX.FRAC
Trois places cotent tes titres et aucune ne découpe le point de la même manière : huitièmes ici, seizièmes là, trente-deuxièmes ailleurs. Tes prix sont pourtant tous propres en décimal, mais chacun doit repartir dans la notation de sa place, sans quoi une cotation lue au mauvais dénominateur désigne un autre prix que le tien. La fonction PRIX.FRAC applique la convention de chaque ligne dès que le dénominateur vit dans une colonne.
- 1Dans une cellule, écris
=PRIX.FRAC(. - 2En 1er argument : clique sur la cellule qui reprend le prix stocké dans ton système,
B2. Il est identique d'une place à l'autre, seule sa notation de sortie va changer. - 3En 2ᵉ argument : clique sur la cellule qui porte le dénominateur,
C2, plutôt que de le figer. C'est le seul argument qui distingue les trois lignes, et il suffit à faire écrire99,4ou102,16au même demi-point. - 4Ferme la parenthèse et appuie sur Entrée.
=PRIX.FRAC(B2; C2),4 en huitièmes, ,08 en seizièmes et ,16 en trente-deuxièmes, parce que la fonction PRIX.FRAC compte 4/8, 8/16 ou 16/32 selon le dénominateur qu'on lui donne. Lire la fraction dans la colonne C laisse une formule unique servir trois conventions de marché.Comment contrôler un aller-retour avec les fonctions PRIX.FRAC et PRIX.DEC
Une cotation qui traverse ta chaîne de traitement doit en ressortir intacte, et tu veux le vérifier avant de laisser le calcul tourner sur un portefeuille entier. Le contrôle tient en une formule : tu convertis la cotation en décimal, tu la reconvertis aussitôt en trente-deuxièmes, et la colonne d'arrivée doit recopier la colonne de départ à l'identique. La fonction PRIX.FRAC referme le circuit ouvert par PRIX.DEC.
- 1Dans une cellule, écris
=PRIX.FRAC(. - 2En 1er argument : écris l'aller à contrôler et referme-le,
PRIX.DEC(B2; 32). La fonction PRIX.DEC traduit la cotationB2en nombre décimal, soit102,125sur la première ligne. - 3En 2ᵉ argument : saisis le dénominateur de la relecture,
32. Le même nombre dans les deux fonctions est la condition de l'aller-retour, car deux dénominateurs différents renverraient une cotation étrangère à celle de départ. - 4Ferme la parenthèse et appuie sur Entrée.
=PRIX.FRAC(PRIX.DEC(B2; 32); 32)102,04 comme 102,125, puis la fonction PRIX.FRAC la ramène telle quelle en 102,04. Retomber sur la cotation de départ à chaque ligne prouve que les deux fonctions se défont exactement l'une l'autre tant qu'elles partagent le même dénominateur.
Les erreurs fréquentes avec la fonction PRIX.FRAC
Presque tous les ratés de PRIX.FRAC viennent du second argument, le dénominateur : du texte non convertible déclenche #VALEUR!, un 0 ou une cellule vide (qu'Excel lit comme un 0) sortent #DIV/0!, tandis qu'un dénominateur négatif, une fraction trop petite ou un calcul hors limites sortent #NOMBRE!.
Le dernier souci n'est pas une erreur mais un malentendu : 100.16 se lit 100 + 16/32, soit 100,50, pas 100,16. Si un résultat te paraît faux, repasse-le dans PRIX.DEC pour vérifier qu'il retombe bien sur ton prix de départ.
Erreur #VALEUR! au lancement
L'erreur #VALEUR! apparaît quand un des paramètres contient du texte non convertible en nombre, comme « prix » ou « N/A » saisi à la main. Un dénominateur nul 0, ou une cellule vide qu'Excel lit comme un 0, donnent plutôt #DIV/0! ; un dénominateur négatif donne #NOMBRE!.
Solution : Vérifie que tes cellules contiennent bien des nombres et pas du texte. Assure-toi que le dénominateur est un entier strictement positif : =PRIX.FRAC(100.5; 32) est correct, =PRIX.FRAC(100.5; 0) provoque #DIV/0!.
Erreur #NOMBRE! pour valeur numérique invalide
L'erreur #NOMBRE! peut survenir si le dénominateur est trop petit ou si le calcul dépasse les limites de précision d'Excel.
Solution : Utilise un dénominateur entier positif standard : 8, 16, 32, 64, 128 ou 256. Évite les valeurs non entières ou les dénominateurs inférieurs à 1.
Résultat interprété comme un nombre décimal au lieu d'une notation fractionnaire
C'est le piège classique : 100.16 semble indiquer 100,16 mais signifie en réalité 100 + 16/32 = 100,50. La partie après le point représente le numérateur de la fraction, pas une décimale.
Solution : Documente systématiquement dans tes tableaux que la colonne est en notation fractionnaire. Pour vérifier, utilise =PRIX.DEC(100.16; 32) qui doit te retourner 100,5 : si oui, ta conversion est correcte.

PRIX.FRAC vs PRIX.DEC
PRIX.FRAC et PRIX.DEC sont deux fonctions complémentaires qui effectuent des conversions inverses. Comprendre leur différence te permet de choisir la bonne selon que tu reçois ou envoies des prix.
| Critère | PRIX.FRAC | PRIX.DEC |
|---|---|---|
| Direction de conversion | Décimal → Fractionnaire | Fractionnaire → Décimal |
| Exemple entrée | 100,50 (décimal) | 100.16 (fractionnaire) |
| Exemple sortie | 100.16 (en 32èmes) | 100,50 (décimal) |
| Cas d'usage | Affichage marché, reporting US | Calculs, stockage en base |
| Nom anglais | DOLLARFR | DOLLARDE |
Questions fréquentes
PRIX.FRAC convertit un prix décimal en prix fractionnaire, tandis que PRIX.DEC fait l'inverse : il convertit un prix fractionnaire en prix décimal. Ces deux fonctions sont complémentaires et utilisées principalement sur les marchés financiers américains, notamment pour les obligations.
Sur les marchés américains, les dénominateurs les plus courants sont 8, 16, 32 et 128. Les obligations du Trésor américain utilisent traditionnellement des fractions en 32èmes (1/32), tandis que d'autres instruments peuvent utiliser des 8èmes ou des 16èmes. Le choix du dénominateur dépend des conventions du marché pour l'instrument concerné.
Le résultat affiche la partie entière suivie de la partie fractionnaire. Par exemple, 100.5 avec un dénominateur de 32 donne 100.16 (ce qui signifie 100 + 16/32). Attention : ce n'est pas un nombre décimal classique. La partie après le point représente le numérateur de la fraction. 100.16 signifie "100 dollars et 16 trente-deuxièmes", soit 100,50 dollars en décimal.
Oui, PRIX.FRAC fonctionne sur Google Sheets sous le nom DOLLARFR. La syntaxe est identique à celle d'Excel. Seule différence : le séparateur d'arguments peut être une virgule ou un point-virgule selon tes paramètres régionaux. En français, on utilise généralement le point-virgule.
Bien que PRIX.FRAC soit principalement conçue pour les cotations financières américaines, tu peux l'utiliser pour convertir n'importe quel nombre décimal en notation fractionnaire. Cela peut être utile pour des mesures en pouces (fractions de 8, 16 ou 32) ou tout autre contexte nécessitant une représentation fractionnaire avec un dénominateur fixe.
Pour aller plus loin
Continue sur ta lancée après la fonction PRIX.FRAC : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



