Qu'est-ce que la fonction OCTBIN ?
OCTBIN (OCT2BIN en anglais dans les versions anglophones) te sert quand un chiffre octal doit être lu bit par bit plutôt que comme un simple nombre, parce que c'est justement à ce niveau-là que se lisent les droits et les masques que tu manipules. La correspondance est parfaite : chaque chiffre octal vaut exactement 3 bits, sans reste ni ambiguïté.
Cette correspondance parfaite fait d'OCTBIN l'outil idéal pour décoder les permissions de fichiers Unix : quand tu vois chmod 755, OCTBIN te montre exactement quels bits sont activés (111 101 101), ce qui correspond à rwx r-x r-x. Développeurs, administrateurs système et électroniciens qui travaillent avec des registres ou des masques de bits y trouvent un outil quotidien pour visualiser les bits actifs sans calcul mental.

Comprendre chaque paramètre de la fonction OCTBIN
OCTBIN se contente d'un seul argument obligatoire : ton nombre octal. Le deuxième, nb_caractères, est facultatif et sert juste à rembourrer le résultat avec des zéros à gauche pour aligner tes colonnes. Sans lui, tu obtiens la longueur minimale ; avec, tu forces un format fixe comme =OCTBIN(7; 6) qui donne "000111" au lieu de "111".
nombre
: le nombre octal à convertir en binaireIl 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, 7 devient 111 (3 bits tous à 1), 755 devient 111101101 (9 bits correspondant à rwxr-xr-x), et 777 devient 111111111 (9 bits tous à 1).
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 ne contiennent que les chiffres 0 à 7 avant d'appeler OCTBIN.
[nb_caractères]
: le nombre de caractères souhaité dans le résultat binaire(facultatif)Si omis, OCTBIN utilise le minimum nécessaire. Maximum 10 caractères.
Par exemple, =OCTBIN(7; 6) retourne "000111" au lieu de simplement "111". Ce formatage est indispensable pour aligner des colonnes de données binaires, respecter un format de registre fixe ou visualiser clairement des masques de bits.

Exemples pratiques pas à pas
Comment convertir un chiffre de droits Unix en bits avec la fonction OCTBIN
Un audit te réclame de justifier les droits accordés sur chaque script du serveur, et la colonne que tu as sous les yeux ne contient qu'un chiffre par ligne, 7 ou 5, parce que c'est ainsi que chmod les note. Tu veux voir en face les trois bits que ce chiffre active, ceux qui disent lecture, écriture et exécution. La fonction OCTBIN traduit chaque chiffre octal en binaire, la seule base où les droits se lisent bit par bit.
- 1Dans une cellule, écris
=OCTBIN(. - 2En 1er argument : clique sur la cellule qui porte le chiffre octal à traduire,
B2avec7. Pointer la cellule plutôt que retaper le chiffre te permet de recopier la formule sur toute la colonne d'un seul geste. - 3En 2ᵉ argument : saisis la largeur du résultat,
3, parce qu'un chiffre octal vaut exactement 3 bits. Sans elle, la fonction OCTBIN s'en tient à la longueur minimale et les lignes ressortent en dents de scie, ce qui casse la lecture en colonne. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas pour traduire chaque chiffre de la colonne.
=OCTBIN(B2; 3)7 de la première ligne ressort 111, les trois droits ouverts, quand le 4 de la troisième ressort 100, la lecture et rien d'autre.Comment isoler les droits du propriétaire en combinant les fonctions OCTBIN et STXT
Ton inventaire ne note plus les droits chiffre par chiffre mais code complet, 755 ou 644, et c'est le propriétaire du fichier qui t'intéresse en priorité : c'est lui qui peut tout écraser. Tu veux ses trois bits en face de chaque ligne, sans découper la colonne à la main. En donnant à la fonction OCTBIN le chiffre que la fonction STXT prélève, tu isoles le groupe de droits voulu et tu le traduis dans la même cellule.
- 1Dans une cellule, écris
=OCTBIN(. - 2En 1er argument : écris la fonction STXT et referme-la,
STXT(B2; 1; 1), au lieu de pointer une cellule. C'est elle qui découpe un seul chiffre dans le code complet stocké enB2avec755. Son1de départ et son1de longueur isolent le premier chiffre, celui du propriétaire, et tu ferais démarrer le découpage à2pour lire le groupe, à3pour les autres. - 3En 2ᵉ argument : saisis la largeur d'un groupe de droits,
3, pour que toutes les lignes s'alignent sur la même longueur quelle que soit la valeur du chiffre. - 4Ferme la parenthèse et appuie sur Entrée. La fonction OCTBIN traduit le chiffre que la fonction STXT vient d'isoler et affiche les trois bits du propriétaire dans la même cellule.
=OCTBIN(STXT(B2; 1; 1); 3)7 en tête de 755, puis la fonction OCTBIN le traduit en 111 : le propriétaire cumule lecture, écriture et exécution. Sur la ligne du 400, le même découpage rend 100, soit la lecture seule.Comment traiter l'erreur #NOMBRE! d'un chiffre invalide avec la fonction OCTBIN
Les chiffres de droits arrivent d'un export saisi à la main, et deux lignes portent un 8 et un 9. Ces chiffres n'existent pas en base 8, où l'on s'arrête à 7, donc la fonction OCTBIN refuse de les traduire et renvoie l'erreur #NOMBRE!. Tu veux que la colonne reste lisible et que les lignes fautives se signalent en clair, sans faire dérailler le reste du tableau.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris la conversion à tenter et referme-la,
OCTBIN(B2; 3), avecB2qui porte le chiffre7et la largeur3qui garde la colonne alignée. Tant que le chiffre est un octal valide, son résultat traverse la fonction SIERREUR sans être modifié. - 3En 2ᵉ argument : saisis le texte à afficher quand la conversion échoue,
"Octal invalide", entre guillemets. Il ne prend la main que sur les lignes où la fonction OCTBIN a vraiment buté, ici le8et le9que la base 8 ne connaît pas. - 4Ferme la parenthèse et appuie sur Entrée. Les lignes valides gardent leurs bits, seules les fautives affichent le message.
=SIERREUR(OCTBIN(B2; 3); "Octal invalide")111 sur la première ligne, mais l'erreur #NOMBRE! sur celles qui portent un 8 ou un 9 : la base 8 ne connaît que les chiffres 0 à 7. La fonction SIERREUR intercepte cette erreur et la remplace par ton texte, ce qui laisse les lignes valides intactes.
Les erreurs fréquentes avec la fonction OCTBIN
Le code #NOMBRE! est presque toujours au rendez-vous, et il cache deux scénarios bien distincts. Le plus fréquent : un 8 ou un 9 traîne dans ta valeur alors que l'octal s'arrête à 7, comme dans =OCTBIN(789). Le second : ton nb_caractères est trop court pour loger le résultat, par exemple =OCTBIN(777; 8) qui voudrait caser 9 bits dans 8 cases.
Le piège silencieux, lui, ne déclenche aucune erreur : OCTBIN lit toujours ton entrée comme de l'octal, donc =OCTBIN(10) te renvoie le binaire de 8 ("1000") et non celui de 10.
Erreur #NOMBRE! sur des chiffres invalides ou un nb_caractères trop petit
L'erreur #NOMBRE! survient dans deux cas : le nombre octal contient les chiffres 8 ou 9 (inexistants en base 8), ou nb_caractères est trop petit pour afficher le résultat. Par exemple, =OCTBIN(789) échoue car 8 et 9 sont invalides, et =OCTBIN(777; 8) échoue car 111111111 fait 9 caractères mais le paramètre n'en autorise que 8.
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 avant de fixer nb_caractères. Pour 777, utilise =OCTBIN(777; 10) qui retourne "0111111111".
Confusion entre la valeur octale et décimale passée en argument
OCTBIN attend un nombre octal, pas décimal. Le nombre 10 en octal représente 8 en décimal (1×8 + 0 = 8). Donc =OCTBIN(10) retourne "1000" (la représentation binaire de 8), et non pas le binaire de 10 décimal qui serait "1010".
Solution : Vérifie que tes données sont bien en notation octale avant de les passer à OCTBIN. Si tes données sont en décimal, convertis-les d'abord avec DECOCT : =OCTBIN(DECOCT(A1)).

OCTBIN vs OCTDEC vs OCTHEX
Choisis OCTBIN quand tu veux voir les bits un par un : c'est la seule des trois où chaque chiffre octal devient pile 3 bits, ce qui rend les permissions Unix lisibles d'un coup d'œil (755 → 111101101). Si tu cherches plutôt à calculer ou comparer des valeurs, passe par OCTDEC qui te ramène en décimal (755 → 493) ; et pour insérer une constante compacte dans du code C ou Python, OCTHEX et son hexadécimal (755 → 1ED) sont plus adaptés.
| Critère | OCTBIN | OCTDEC | OCTHEX |
|---|---|---|---|
| Base de sortie | Base 2 (binaire) | Base 10 (décimal) | Base 16 (hexadécimal) |
| Correspondance par chiffre | 1 chiffre octal = 3 bits (parfaite) | Pas de correspondance directe | 3 chiffres oct = 4 bits (indirect) |
| Résultat pour 755 | 111101101 | 493 | 1ED |
| Cas d'usage principal | Visualiser les bits, permissions Unix | Calculs arithmétiques, comparaisons | Code C/Python/JavaScript, mémoire |
| Lisibilité humaine | Excellente pour les bits individuels | Bonne pour les calculs | Compacte pour les grands nombres |
Questions fréquentes
Parce que 8 = 2³. Chaque chiffre octal (0-7) représente exactement toutes les combinaisons possibles de 3 bits (000 à 111). Cette correspondance parfaite rend la conversion triviale et sans ambiguïté, contrairement aux conversions impliquant le décimal ou l'hexadécimal.
Groupe le résultat binaire par 3 chiffres depuis la droite et convertis chaque groupe en son équivalent octal. Par exemple, 111101101 devient 111 101 101 = 7 5 5 = 755 en octal. Si tu retrouves ton nombre original, la conversion est correcte.
Historiquement, les premiers ordinateurs utilisaient des mots de 12, 24 ou 36 bits, tous divisibles par 3. L'octal était donc naturel. Aujourd'hui, il persiste principalement dans les permissions Unix (chmod) et certains langages pour les constantes numériques (préfixe 0 en C).
Par défaut, OCTBIN supprime les zéros non significatifs. Pour les conserver, utilise le paramètre nb_caractères. Par exemple, =OCTBIN(7; 6) donne "000111" au lieu de simplement "111". C'est utile pour aligner des colonnes de données ou respecter un format de registre fixe.
Absolument, c'est l'un de ses usages les plus courants. Chaque chiffre chmod (ex. 7, 5, 5) devient 3 bits correspondant aux droits rwx. =OCTBIN(755) retourne "111101101" : propriétaire=111 (tout), groupe=101 (lecture+exécution), autres=101 (lecture+exécution).
Non sous ce nom. Dans Google Sheets, la fonction équivalente s'appelle OCT2BIN (nom anglais). Elle fonctionne de la même façon avec les mêmes paramètres. Si tu migres un classeur Excel vers Sheets, remplace OCTBIN par OCT2BIN.
Pour aller plus loin
Continue sur ta lancée après la fonction OCTBIN : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



