UNICAR : La formule Excel pour convertir les codes Unicode en caractères
=UNICAR(nombre)La formule UNICAR est une fonction texte puissante d'Excel qui permet de convertir un code Unicode numérique en son caractère équivalent. Introduite dans Excel 2013 et disponible dans toutes les versions récentes, cette formule complète parfaitement les fonctions CHAR et CODE en offrant une compatibilité étendue avec l'ensemble des caractères Unicode. Que vous travailliez avec des caractères spéciaux, des symboles mathématiques, des caractères accentués ou des émojis, UNICAR transforme des nombres en caractères lisibles. Cette fonction s'avère indispensable pour les professionnels manipulant des données multilingues, des symboles techniques ou des caractères spécialisés. Contrairement à CHAR qui se limite aux 255 premiers caractères, UNICAR accède à la totalité de la table Unicode, offrant une flexibilité incomparable. Elle est particulièrement utile dans les contextes d'importation de données, de nettoyage de texte ou de génération automatique de contenu formaté avec des caractères spéciaux.
Syntaxe et paramètres
La syntaxe de la formule UNICAR est extrêmement simple et directe : =UNICAR(nombre). Le paramètre 'nombre' est obligatoire et représente le code Unicode décimal du caractère que vous souhaitez obtenir. Ce code doit être un entier positif compris entre 0 et 1 114 111, couvrant l'intégralité de l'espace Unicode standard. Le paramètre accepte plusieurs formats d'entrée : une valeur numérique directe (exemple : 65), une référence cellulaire (exemple : A1), ou même une formule qui retourne un nombre (exemple : CODE("A")). Excel convertit automatiquement le nombre en son équivalent caractère Unicode. Si le nombre fourni est en dehors de la plage valide, Excel retourne l'erreur #VALUE!. Il est important de noter que UNICAR fonctionne uniquement avec des nombres entiers ; les nombres décimaux sont tronqués. Pour une utilisation optimale, vérifiez toujours que votre source de données contient des codes Unicode valides et utilisez la validation de données pour éviter les erreurs.
numberExemples pratiques
Génération de symboles mathématiques
=UNICAR(8721)Le code Unicode 8721 correspond au symbole de somme (∑). Cette formule est utilisée dans une feuille de calcul pour générer automatiquement des symboles mathématiques sans passer par l'insertion manuelle.
Création de caractères accentués multilingues
=UNICAR(233)&UNICAR(97)Le code 233 génère 'é' et 97 génère 'a'. Cette combinaison crée le mot 'éa' en chaînant deux caractères Unicode. Utile pour construire des noms ou des mots avec des accents spécifiques.
Conversion de codes de symboles de devises
=UNICAR(8364)Le code 8364 correspond au symbole de l'euro (€). Cette approche permet de gérer dynamiquement plusieurs symboles de devises en fonction de données variables.
Points clés à retenir
- UNICAR convertit un code Unicode numérique en son caractère équivalent, supportant l'intégralité de la table Unicode (0-1114111)
- Contrairement à CHAR limitée aux 255 premiers caractères, UNICAR offre accès aux symboles, caractères accentués et caractères spécialisés
- La formule accepte des nombres directs, des références cellulaires ou des formules retournant des nombres comme paramètre
- UNICAR est disponible à partir d'Excel 2013 et compatible avec Excel 365, 2016 et 2019
- Combinez UNICAR avec CODE, CONCATENATE ou IF pour créer des solutions sophistiquées de conversion et de validation de caractères
Astuces de pro
Créez une table de référence : Listez les codes Unicode courants (symboles, devises, accents) dans une colonne et utilisez UNICAR dans la colonne adjacente pour générer un tableau de consultation rapide.
Impact : Gagne du temps lors de la recherche de codes Unicode et crée une ressource réutilisable pour tous vos projets Excel.
Combinez UNICAR avec INDIRECT pour créer des références dynamiques : =UNICAR(INDIRECT("A"&ROW())) permet de traiter des codes stockés dans des lignes variables sans modifier la formule.
Impact : Augmente la flexibilité des formules et permet des mises à jour automatiques sans recréer les formules.
Utilisez UNICAR dans les validations de données pour créer des listes déroulantes avec des symboles : combinez avec les fonctions de liste pour proposer des choix visuels plutôt que numériques.
Impact : Améliore l'expérience utilisateur en affichant des symboles plutôt que des codes numériques abstraits.
Testez la compatibilité des polices : certains caractères Unicode ne s'affichent correctement que dans certaines polices (Calibri, Arial Unicode MS, etc.). Changez la police si un caractère n'apparaît pas correctement.
Impact : Évite les frustrations liées aux caractères non visibles et garantit une présentation professionnelle.
Combinaisons utiles
Conversion bidirectionnelle avec CODE et UNICAR
=UNICAR(CODE(A1)+1)Cette combinaison extrait le code Unicode du caractère en A1, ajoute 1 (pour obtenir le caractère suivant), puis le reconvertit. Très utile pour générer des séquences de caractères ou des alphabets décalés.
Génération de chaînes formatées avec CONCATENATE
="Code: "&CODE(A1)&" = "&UNICAR(CODE(A1))Combine UNICAR avec CODE et du texte statique pour créer des étiquettes descriptives. Affiche le code Unicode et son caractère équivalent dans un format lisible.
Nettoyage de données avec IF et UNICAR
=IF(AND(A1>=32,A1<=126),UNICAR(A1),"INVALID")Valide que le code Unicode est dans la plage ASCII imprimable (32-126) avant conversion. Retourne 'INVALID' pour les codes en dehors de cette plage, utile pour nettoyer des données importées.
Erreurs courantes
Cause : Le paramètre 'nombre' contient un texte non numérique ou un nombre en dehors de la plage Unicode valide (0-1114111).
Solution : Vérifiez que la cellule référencée contient un nombre valide. Utilisez VALUE() pour convertir du texte en nombre si nécessaire. Exemple : =UNICAR(VALUE(A1)) ou vérifiez que le code est entre 0 et 1114111.
Cause : La formule est mal orthographiée ou utilisée dans une version d'Excel antérieure à 2013 qui ne reconnaît pas UNICAR.
Solution : Vérifiez l'orthographe exacte : UNICAR (pas UNICHAR ou UNICODE). Confirmez que vous utilisez Excel 2013 ou une version plus récente. Pour les versions antérieures, utilisez CHAR() à la place.
Cause : La formule référence une cellule qui a été supprimée ou un nom défini qui n'existe plus.
Solution : Vérifiez que toutes les références de cellules sont valides et que les plages n'ont pas été supprimées. Utilisez le gestionnaire de noms pour identifier les références rompues.
Checklist de dépannage
- 1.Vérifiez que la version d'Excel est 2013 ou plus récente (UNICAR n'existe pas dans les versions antérieures)
- 2.Confirmez que le paramètre 'nombre' contient un entier valide entre 0 et 1114111, sans texte ni espaces superflus
- 3.Vérifiez que la police utilisée supporte le caractère Unicode généré (certaines polices ne contiennent pas tous les caractères)
- 4.Testez avec des codes Unicode connus (ex: 65 pour 'A') pour isoler les problèmes de formule ou de données
- 5.Utilisez ISNUMBER() pour valider que les codes proviennent de cellules contenant réellement des nombres, pas du texte
- 6.Consultez une table Unicode en ligne pour confirmer que le code correspond au caractère attendu
Cas particuliers
Codes Unicode supérieurs à 65535 (caractères en dehors du plan multilingue de base)
Comportement : UNICAR fonctionne correctement avec ces codes, mais l'affichage dépend fortement de la police et du système d'exploitation. Certains caractères peuvent ne pas s'afficher.
Solution : Testez d'abord avec une police Unicode complète comme 'Segoe UI Symbol' ou 'Arial Unicode MS'. Vérifiez la compatibilité avant de déployer.
Les codes entre 128512 et 1114111 incluent les émojis, mais leur affichage est imprévisible dans Excel.
Caractères de contrôle (codes 0-31)
Comportement : UNICAR génère techniquement ces caractères, mais ils sont invisibles ou provoquent des comportements imprévisibles (sauts de ligne, tabulations, etc.).
Solution : Évitez les codes 0-31 sauf si vous avez une raison spécifique. Utilisez IF pour filtrer ces valeurs : =IF(A1<32,"CONTRÔLE",UNICAR(A1))
Le code 10 génère un saut de ligne, 9 génère une tabulation. Utiles pour formater du texte multi-ligne.
Nombres décimaux ou négatifs
Comportement : Les nombres décimaux sont tronqués (65.9 devient 65). Les nombres négatifs retournent #VALUE!
Solution : Utilisez INT() ou ROUND() pour nettoyer les données : =UNICAR(INT(A1)). Pour les négatifs, validez avec IF : =IF(A1<0,"ERREUR",UNICAR(A1))
Toujours préparer les données avant de les passer à UNICAR pour éviter les erreurs.
Limitations
- •UNICAR n'est disponible que dans Excel 2013 et versions ultérieures. Les utilisateurs d'Excel 2010 ou antérieurs doivent utiliser CHAR() qui est limité aux 255 premiers caractères.
- •L'affichage des caractères générés dépend de la police utilisée. Certains caractères Unicode ne s'affichent pas correctement si la police ne les supporte pas, même si la formule fonctionne correctement.
- •UNICAR fonctionne uniquement avec des nombres entiers. Les nombres décimaux sont tronqués et les nombres négatifs retournent une erreur #VALUE!.
- •Il n'existe aucune fonction inverse directe pour convertir des caractères en codes Unicode au-delà de 255. CODE() fonctionne uniquement pour les 255 premiers caractères, nécessitant des solutions alternatives pour les caractères Unicode complets.
Alternatives
CHAR()
Fonction plus ancienne et universellement compatible, disponible dans toutes les versions d'Excel depuis le début.
Quand : Utiliser CHAR() uniquement pour les caractères ASCII (codes 0-255). Pour les caractères Unicode au-delà de 255, UNICAR est obligatoire.
Compatibilité
✓ Excel
Depuis Excel 2013
=UNICAR(nombre) - Disponible dans Excel 2013, 2016, 2019, 365 et toutes les versions récentes✓Google Sheets
=UNICHAR(nombre) - Notez la différence d'orthographe : UNICHAR au lieu de UNICARGoogle Sheets utilise UNICHAR (avec H) au lieu de UNICAR. La fonctionnalité est identique mais le nom diffère légèrement.
✓LibreOffice
=UNICHAR(nombre) - Comme Google Sheets, LibreOffice Calc utilise UNICHAR au lieu de UNICAR