Aller au contenu principal

Qu'est-ce que la fonction OCTHEX ?

Définition
La fonction OCTHEX convertit un nombre exprimé en base octale (base 8, chiffres 0 à 7) en sa représentation hexadécimale (base 16, chiffres 0-9 et lettres A-F). Le résultat est une chaîne de texte en majuscules.

OCTHEX te sert quand tu dois traduire une notation héritée d'un système plus ancien vers un format que les outils actuels comprennent directement, sans passer par une étape de conversion intermédiaire ni te tromper de base. Une seule formule remplace le calcul manuel chiffre par chiffre, toujours source d'erreur sur les valeurs à plusieurs digits.

Cette conversion est essentielle pour les développeurs et administrateurs système qui jonglent entre les conventions UNIX traditionnelles (permissions en octal avec chmod) et les langages modernes qui préfèrent l'hexadécimal : Python, JavaScript, C avec le préfixe 0x. Elle sert aussi à traduire des adresses mémoire et des codes de configuration d'équipements anciens vers des formats lisibles par les outils actuels.

Syntaxe

Clique sur un argument pour aller à son explication.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction OCTHEX

OCTHEX se lit dans l'ordre où tu travailles : d'abord le nombre octal à traduire, puis, si tu y tiens, le nombre de caractères que tu veux dans le résultat. Seul ce second argument est facultatif, et c'est lui qui te sert à aligner tes valeurs sur 4, 6 ou 8 digits avec des zéros de tête.

1

nombre

: le nombre octal à convertir

Il ne peut contenir que les chiffres 0 à 7, sur 10 chiffres maximum. Le bit de poids fort représente le signe pour les nombres négatifs (complément à deux sur 30 bits).

Par exemple, "777" (511 en décimal) devient 1FF en hexadécimal, et "755" (493 en décimal) devient 1ED.

Attention : Les chiffres 8 et 9 n'existent pas en octal. Si ta valeur en contient, tu obtiendras l'erreur #NOMBRE!. Vérifie toujours que tes données sont bien en base 8 avant d'appeler OCTHEX.

2

[nb_caractères]

: le nombre de caractères souhaité dans le résultat hexadécimal(facultatif)

Si ce paramètre est omis, OCTHEX utilise le minimum nécessaire pour représenter la valeur. Maximum 10 caractères.

Par exemple, =OCTHEX(17; 4) retourne "000F" au lieu de simplement "F". Ce formatage est utile pour aligner des adresses mémoire ou générer des codes couleur sur un nombre fixe de digits.

Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment convertir un code chmod octal en hexadécimal avec la fonction OCTHEX

L'API à laquelle tu envoies l'inventaire attend les droits de chaque fichier en hexadécimal, alors que tout ton parc les note en octal, 755 ou 644, comme le fait chmod depuis toujours. Tu as la colonne octale et tu veux la colonne hexadécimale en face, sans table de correspondance ni conversion à la main. La fonction OCTHEX fait le saut de la base 8 à la base 16 en une seule formule.

Les étapes
  1. 1
    Dans une cellule, écris =OCTHEX(.
  2. 2
    En 1er argument : clique sur la cellule qui contient le code octal à traduire, B2 avec 755. La formule pointe la cellule plutôt que le nombre lui-même, si bien qu'une seule recopie convertit tout l'inventaire et que chaque ligne traduit son propre code.
  3. 3
    Ferme la parenthèse et appuie sur Entrée.
Au final, ta formule devrait ressembler à ça :=OCTHEX(B2)
Explication
La fonction OCTHEX passe de la base 8 à la base 16 sans étape intermédiaire : le 755 de la première ligne ressort 1ED, et le 600 de la cinquième ressort 180, un résultat qui se devine mal de tête. Les lettres reviennent toujours en majuscules.
Exemple 2

Comment produire une constante hexadécimale préfixée 0x avec la fonction OCTHEX

Tu dois recopier ces droits dans un fichier de configuration Python, et là-bas une valeur hexadécimale ne se lit pas toute nue : elle porte le préfixe 0x, sans lequel l'interpréteur la prendrait pour un nombre décimal. Tu veux une colonne prête à coller, pas une colonne à retoucher ligne par ligne. L'esperluette colle le préfixe devant le résultat de ta fonction OCTHEX.

Les étapes
  1. 1
    Dans une cellule, écris = puis le préfixe entre guillemets, "0x". Les guillemets sont obligatoires pour qu'Excel garde ce texte tel quel au lieu d'y chercher un nom de plage.
  2. 2
    Ajoute l'esperluette &, l'opérateur qui colle deux morceaux de texte bout à bout. Elle n'effectue aucun calcul, elle assemble.
  3. 3
    Écris OCTHEX( puis clique sur la cellule du code octal, B2 avec 755. La fonction traduit 755 en 1ED, et l'esperluette pose 0x juste devant.
  4. 4
    Ferme la parenthèse et appuie sur Entrée.
Voici la formule que tu obtiens à la fin :="0x" & OCTHEX(B2)
Explication
La fonction OCTHEX rend 1ED et l'esperluette lui colle 0x devant, ce qui donne une constante que Python, C ou JavaScript acceptent telle quelle. Le 500 de la troisième ligne ressort 0x140, là où la lecture de tête partirait volontiers sur un 0x500.
Le conseil du pro
Pour réutiliser le résultat directement dans du code, colle-lui le préfixe hexadécimal avec l'esperluette : « 0x » & OCTHEX(B2) renvoie « 0x1ED », exploitable tel quel en Python, C ou JavaScript.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction OCTHEX

Le #NOMBRE! est le seul vrai accroc d'OCTHEX, et il tombe pour deux raisons opposées : soit ton nombre contient un 8 ou un 9 qui n'existent pas en base 8, soit ton nb_caractères est trop court pour contenir le résultat (=OCTHEX(777; 2) ne peut pas loger 1FF en 2 caractères).

Le second cas n'est pas une panne mais un choix de format : les lettres reviennent toujours en majuscules, à toi de les repasser en minuscules si ton CSS l'exige.

Erreur #NOMBRE! sur un chiffre invalide

L'erreur #NOMBRE! apparaît quand le nombre octal contient les chiffres 8 ou 9 (qui n'existent pas en base 8), ou quand nb_caractères est insuffisant pour afficher le résultat. Par exemple, =OCTHEX(89) échoue car 8 et 9 ne sont pas des chiffres octaux, et =OCTHEX(777; 2) échoue car 1FF nécessite 3 caractères.

Solution : Vérifie que ta valeur ne contient que les chiffres 0 à 7. Pour le formatage, calcule d'abord la longueur naturelle du résultat avec =NBCAR(OCTHEX(nombre)) et assure-toi que nb_caractères est supérieur ou égal. Pour 777, utilise =OCTHEX(777; 4) qui retourne "01FF".

Le résultat est en majuscules alors qu'on attend des minuscules

Excel retourne toujours les lettres hexadécimales (A-F) en majuscules. Ce comportement est fixe et ne peut pas être configuré dans OCTHEX.

Solution : Entoure OCTHEX avec MINUSCULE pour obtenir des lettres en minuscules : =MINUSCULE(OCTHEX(777)) retourne "1ff". C'est le format standard pour les couleurs CSS et les URLs web.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

OCTHEX vs OCTDEC + DECHEX vs OCTBIN + BINHEX

Prends OCTHEX dès que tu veux juste passer de l'octal à l'hexadécimal : une seule formule, pas de colonne intermédiaire, et moins de risque d'arrondi sur les grands nombres. Garde le duo OCTDEC + DECHEX uniquement si tu as aussi besoin de la valeur décimale au passage, et OCTBIN + BINHEX si c'est le binaire qui t'intéresse en route.

CritèreOCTHEXOCTDEC + DECHEXOCTBIN + BINHEX
Étapes de conversion1 seule étape2 étapes enchaînées2 étapes enchaînées
RésultatHexadécimal directPassage par décimalPassage par binaire
Précision sur grands nombresMeilleure (conversion directe)Risque arrondi intermédiaireBonne
Cas d'usageConversion directe oct->hexQuand on a besoin du décimal aussiQuand on a besoin du binaire aussi
Le savais-tu ?
Passer de l'octal au binaire est immédiat (1 chiffre égale 3 bits), mais de l'octal à l'hexadécimal, non : 8 n'est pas une puissance de 16. C'est justement pour ça qu'OCTHEX existe en une fonction dédiée, plus fiable que d'enchaîner deux conversions à la main.
FAQ

Questions fréquentes

Contrairement à octal-binaire (1 chiffre octal = 3 bits) ou hexadécimal-binaire (1 chiffre hex = 4 bits), il n'y a pas de correspondance simple entre octal et hexadécimal car 8 n'est pas une puissance de 16 et inversement. Excel passe par une représentation intermédiaire pour garantir la précision. C'est pourquoi une fonction dédiée comme OCTHEX est plus fiable que deux étapes manuelles.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction OCTHEX : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir