Fonction HEXDEC ExcelGuide Complet 2026 : Convertir Hexadécimal en Décimal
HEXDEC (HEX2DEC en anglais) est LA fonction Excel qui convertit un nombre hexadécimal (base 16) en son équivalent décimal (base 10). Si tu bosses dans le développement web, l'administration réseau, la cybersécurité ou l'IoT, cette fonction va devenir ton alliée. Elle te permet de décoder instantanément les codes couleurs HTML, les adresses MAC, les codes d'erreur système ou les données de protocoles techniques.
L'hexadécimal utilise 16 symboles : les chiffres 0-9 et les lettres A-F (où A=10, B=11, C=12, D=13, E=14, F=15). Cette base est omniprésente en informatique car elle offre une représentation compacte et lisible des valeurs binaires. Dans ce guide, tu vas apprendre à maîtriser HEXDEC avec des exemples concrets tirés de situations professionnelles réelles.
Syntaxe de la fonction HEXDEC
=HEXDEC(nombre)La fonction HEXDEC prend un seul paramètre : le nombre hexadécimal à convertir. Simple et efficace, elle transforme n'importe quelle valeur hexadécimale (jusqu'à 10 caractères) en son équivalent décimal.
Comprendre chaque paramètre de la fonction HEXDEC
nombre
(obligatoire)C'est le nombre hexadécimal que tu veux convertir en décimal. Il peut être fourni sous forme de texte entre guillemets comme "FF", ou comme référence à une cellule contenant une valeur hexadécimale comme A1. Le nombre peut contenir jusqu'à 10 caractères hexadécimaux (0-9, A-F).
Les lettres A-F ne sont pas sensibles à la casse, donc "FF", "ff", ou "Ff" donnent tous le même résultat : 255. Le nombre le plus élevé accepté est FFFFFFFFFF, qui correspond à 1 099 511 627 775 en décimal.
Astuce de pro : Pour convertir des codes couleurs HTML comme #FF5733, tu dois d'abord retirer le symbole # avec =HEXDEC(DROITE(A1;NBCAR(A1)-1)), puis extraire chaque paire de caractères pour obtenir les valeurs RGB.
Comprendre le système hexadécimal
Dans le système hexadécimal, chaque position représente une puissance de 16 (d'où le nom hexa-décimal). C'est comme le système décimal où chaque position représente une puissance de 10, mais avec 16 symboles au lieu de 10.
Par exemple, le nombre hexadécimal "2F" se décompose ainsi :
- • Position des unités (16⁰) : F = 15 × 1 = 15
- • Position des seizaines (16¹) : 2 × 16 = 32
- • Total : 32 + 15 = 47 en décimal
Cette base est omniprésente en informatique car un chiffre hexadécimal correspond exactement à 4 bits binaires (appelé un "nibble"). Ça permet de représenter des données binaires de manière beaucoup plus lisible : 11111111 en binaire devient simplement FF en hexadécimal.
Bon à savoir : En hexadécimal, FF est la valeur maximale qu'on peut représenter sur 8 bits (1 octet), d'où son utilisation massive dans les codes couleurs RGB où chaque composante (Rouge, Vert, Bleu) va de 0 à 255.
Exemples pratiques pas à pas
Exemple 1 – Designer web : extraire les valeurs RGB d'une palette de couleurs
Tu es designer web et ton client t'a envoyé une charte graphique avec des codes couleurs en hexadécimal. Tu dois extraire les valeurs RGB (0-255) pour les utiliser dans un outil de design qui ne supporte que le format RGB décimal.
Décomposer un code couleur hexadécimal #FF5733 en valeurs RGB décimales : Rouge=255, Vert=87, Bleu=51.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Code couleur | Composante | Formule | Valeur RGB |
| 2 | #FF5733 | Rouge | =HEXDEC("FF") | 255 |
| 3 | #FF5733 | Vert | =HEXDEC("57") | 87 |
| 4 | #FF5733 | Bleu | =HEXDEC("33") | 51 |
| 5 | Format final | rgb(255, 87, 51) |
=HEXDEC(STXT(A1;2;2))Tu peux automatiser l'extraction avec =HEXDEC(STXT(A1;2;2)) pour le rouge, =HEXDEC(STXT(A1;4;2)) pour le vert, et =HEXDEC(STXT(A1;6;2)) pour le bleu. Pratique quand tu as 50 couleurs à convertir !
Exemple 2 – Admin réseau : analyser les adresses MAC des équipements
Tu es administrateur réseau et tu dois analyser les adresses MAC de tes équipements pour identifier les fabricants. Les trois premiers octets (OUI - Organizationally Unique Identifier) sont en hexadécimal et tu veux les convertir en décimal pour faire des comparaisons numériques.
Extraire et convertir le premier octet d'une adresse MAC en décimal pour analyse et classification.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Adresse MAC | Premier octet | Formule | Valeur décimale | Usage |
| 2 | 00:1A:2B:3C:4D:5E | 00 | =HEXDEC("00") | 0 | Xerox Corp |
| 3 | DC:A6:32:F1:23:45 | DC | =HEXDEC("DC") | 220 | Raspberry Pi |
| 4 | F8:FF:C2:11:22:33 | F8 | =HEXDEC("F8") | 248 | Apple Inc |
| 5 | 00:50:56:AA:BB:CC | 00 | =HEXDEC("50") | 80 | VMware |
=HEXDEC(GAUCHE(A1;2))Combine HEXDEC avec GAUCHE, STXT ou DROITE pour extraire n'importe quel octet de l'adresse MAC. Tu peux ensuite créer des plages de recherche pour identifier automatiquement les fabricants.
Exemple 3 – Développeur IoT : décoder les trames de capteurs
Tu es développeur IoT et tes capteurs envoient des données en hexadécimal via un protocole LoRaWAN. Tu dois convertir ces valeurs brutes pour afficher les températures réelles dans ton dashboard.
Extraire la température d'une trame IoT hexadécimale et la convertir en degrés Celsius (valeur/10).
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Trame brute | Valeur hex temp | Formule | Temp décimale | Temp réelle (°C) |
| 2 | A1B2C3D4E5F6 | E5 | =HEXDEC("E5") | 229 | 22,9 |
| 3 | 11223344AA00 | AA | =HEXDEC("AA") | 170 | 17,0 |
| 4 | FFAA5511FF32 | FF | =HEXDEC("FF") | 255 | 25,5 |
| 5 | 00112233441A | 1A | =HEXDEC("1A") | 26 | 2,6 |
=HEXDEC(STXT(A1;11;2))/10Dans cet exemple, la température est encodée sur 2 caractères hex aux positions 11-12 de la trame. La valeur décimale est divisée par 10 pour obtenir la température réelle. Une technique courante pour transmettre des décimales sans virgule flottante.
Exemple 4 – Ingénieur système : analyser les codes d'erreur Windows
Tu bosses comme ingénieur système et tu dois analyser des logs d'erreurs Windows qui contiennent des codes hexadécimaux. Pour documenter et rechercher ces erreurs, tu as besoin de les convertir en décimal afin de les croiser avec ta base de connaissances.
Convertir les codes d'erreur Windows du format hexadécimal (0xC0000005) vers décimal pour documentation.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Code erreur hex | Formule | Code décimal | Type d'erreur |
| 2 | 0xC0000005 | =HEXDEC("C0000005") | 3221225477 | Access Violation |
| 3 | 0x80070005 | =HEXDEC("80070005") | 2147942405 | Access Denied |
| 4 | 0x8007000E | =HEXDEC("8007000E") | 2147942414 | Out of Memory |
| 5 | 0xC000007B | =HEXDEC("C000007B") | 3221225595 | Invalid Image Format |
=HEXDEC(DROITE(A1;NBCAR(A1)-2))Utilise DROITE(A1;NBCAR(A1)-2) pour retirer automatiquement le préfixe "0x" avant de convertir. Tu peux ensuite utiliser RECHERCHEV pour associer chaque code à sa description dans ta base de connaissances.
Les erreurs fréquentes et comment les corriger
Erreur #NOMBRE! - Caractères invalides
Cette erreur survient quand tu utilises des caractères non hexadécimaux. Seuls 0-9 et A-F (ou a-f) sont acceptés. Par exemple, =HEXDEC("G5") retournera #NOMBRE! car G n'existe pas en hexadécimal (ça s'arrête à F).
Solution : Vérifie que ta chaîne ne contient que des caractères valides. Si tu importes des données externes, utilise SUBSTITUE ou NETTOYER pour retirer les caractères parasites comme les espaces ou symboles : =HEXDEC(NETTOYER(A1)).
Erreur #NOMBRE! - Dépassement de capacité
HEXDEC accepte maximum 10 caractères hexadécimaux. Au-delà, ou si la valeur convertie dépasse les limites d'Excel (1 099 511 627 775), tu obtiens #NOMBRE!. Par exemple, =HEXDEC("FFFFFFFFFFF") (11 caractères) plantera.
Solution : Divise les très grandes valeurs hexadécimales en segments plus petits que tu traites séparément, ou utilise des outils externes comme Python pour les conversions dépassant les limites d'Excel.
Préfixes non gérés (0x, #, &H)
Beaucoup de langages et systèmes ajoutent des préfixes aux nombres hexadécimaux : 0x en C/JavaScript, # en HTML/CSS, &H en VBA. HEXDEC n'accepte pas ces préfixes et retournera une erreur si tu les laisses.
Solution : Utilise SUBSTITUE pour retirer le préfixe : =HEXDEC(SUBSTITUE(A1;"0x";"")), ou DROITE pour sauter les N premiers caractères : =HEXDEC(DROITE(A1;NBCAR(A1)-2)) pour retirer "0x" ou "#".
Espaces et caractères invisibles
Les espaces avant, après ou à l'intérieur du nombre hexadécimal peuvent causer des erreurs silencieuses. Souvent présents après des copier-coller depuis le web ou des exports de logs.
Solution : Enveloppe systématiquement ta valeur avec SUPPRESPACE pour éliminer tous les espaces superflus : =HEXDEC(SUPPRESPACE(A1)). Encore mieux, combine avec NETTOYER pour retirer aussi les caractères non imprimables : =HEXDEC(NETTOYER(SUPPRESPACE(A1))).
HEXDEC vs autres fonctions de conversion de bases
| Fonction | Conversion | Cas d'usage principal | Limite |
|---|---|---|---|
| HEXDEC | Hex → Décimal | Codes couleurs, adresses MAC | 10 caractères hex |
| DECHEX | Décimal → Hex | Générer des codes, debugging | 549 755 813 887 |
| BINDEC | Binaire → Décimal | Calculs binaires, masques réseau | 10 bits |
| DECBIN | Décimal → Binaire | Représentation binaire, flags | -512 à 511 |
| OCTDEC | Octal → Décimal | Permissions Unix/Linux | 10 caractères oct |
Choix de la fonction : Utilise HEXDEC pour tout ce qui concerne le web (couleurs) et les réseaux (adresses MAC). Pour les permissions de fichiers Linux, préfère OCTDEC. Pour manipuler des drapeaux (flags) ou masques de bits, BINDEC/DECBIN sont plus adaptés.
Astuces avancées pour les pros
Convertir un code couleur complet en un coup :
Crée une formule qui extrait automatiquement R, G et B : =HEXDEC(STXT(A1;2;2))&","&HEXDEC(STXT(A1;4;2))&","&HEXDEC(STXT(A1;6;2)) pour transformer #FF5733 en "255,87,51" directement.
Gérer plusieurs formats de préfixes :
Si tes données viennent de sources mixtes (0x, #, ou sans préfixe), utilise une formule robuste : =HEXDEC(SUBSTITUE(SUBSTITUE(A1;"0x";"");"#";"")) pour nettoyer tous les préfixes en une passe.
Valider qu'une chaîne est hexadécimale :
Avant de convertir, vérifie la validité avec : =SI(ESTVIDE(TROUVE("["&A1&"]";"[0123456789ABCDEFabcdef]"));HEXDEC(A1);"Invalide"). Ça évite les erreurs sur des données corrompues.
Convertir des adresses IPv6 :
Les adresses IPv6 comme 2001:0db8:85a3 sont en hexadécimal. Utilise HEXDEC sur chaque segment séparé par ":" pour analyser et comparer des plages d'adresses : =HEXDEC(STXT(A1;TROUVE(":";A1)+1;4)).
Questions fréquentes
Quelle est la différence entre HEXDEC et HEX2DEC ?
Il n'y a aucune différence. HEX2DEC est le nom anglais de la fonction, tandis que HEXDEC est le nom utilisé dans les versions françaises d'Excel. Les deux fonctions effectuent exactement la même conversion d'hexadécimal vers décimal.
Pourquoi utiliser l'hexadécimal en informatique ?
L'hexadécimal est compact et pratique pour représenter de grandes valeurs binaires. Un chiffre hexadécimal représente exactement 4 bits, facilitant la conversion. C'est utilisé pour les adresses mémoire, codes couleurs RGB, et identifiants système.
Comment convertir un code couleur HTML vers RGB avec HEXDEC ?
Pour #FF5733, tu dois extraire les paires : HEXDEC("FF") donne 255 (rouge), HEXDEC("57") donne 87 (vert), HEXDEC("33") donne 51 (bleu). Utilise STXT pour extraire automatiquement chaque paire de caractères.
HEXDEC peut-elle gérer les nombres négatifs ?
Non, HEXDEC ne gère pas directement les nombres négatifs. En hexadécimal, les nombres négatifs sont généralement représentés en complément à deux. Si tu travailles avec des valeurs signées, tu devras créer une logique personnalisée pour interpréter les bits de signe.
Quelle est la limite maximale de HEXDEC ?
HEXDEC accepte jusqu'à 10 caractères hexadécimaux, soit une valeur maximale de FFFFFFFFFF (10 F). Cela correspond à 1 099 511 627 775 en décimal. Au-delà, Excel retourne une erreur #NOMBRE!.
Les fonctions de conversion de bases numériques
Deviens un pro d'Excel
Tu maîtrises maintenant HEXDEC ! Rejoins Le Dojo Club pour découvrir toutes les fonctions Excel et booster ta productivité au quotidien.
Essayer pendant 30 jours