Faut-il une macro VBA pour écrire un nombre en lettres dans Excel ?
Sans l’add-in
Trois solutions existent, avec des contraintes très différentes :
- Une fonction
LAMBDA, sans macro. Elle fonctionne dans Excel pour Microsoft 365 et dans Excel 2024. Elle est décrite dans écrire un nombre en toutes lettres. Pas de macro, mais il faut la définir dans chaque classeur et elle se limite aux entiers de 0 à 999 999 999. - Une macro VBA. C’est la solution historique, la seule qui marche dans Excel 2016, 2019 et 2021. Des fonctions toutes faites circulent sur les forums, par exemple « ConvNumberLetter » (voir les sources). Le principe : ouvrir l’éditeur avec
Alt+F11, ajouter un module, y coller le code, puis utiliser la fonction dans une cellule. Ses contraintes :- le classeur doit être enregistré au format
.xlsm, le format.xlsxne conservant pas le code ; - les macros doivent être activées à l’ouverture du classeur, ce que de nombreux postes d’entreprise interdisent ;
- les macros ne s’exécutent pas dans Excel pour le web ;
- le code vient d’un forum : il faut le relire et le tester, un fil de discussion signale par exemple des centimes mal gérés pour certains montants.
- le classeur doit être enregistré au format
- Un convertisseur en ligne, avec copier-coller du résultat. Le texte est figé : il ne suit pas la cellule quand le nombre change.
Avec l’add-in
Nombres Excel Add-in
L’add-in apporte une fonction native (=NOMBRE_EN_LETTRES(A2)) : aucune macro, le classeur reste un .xlsx, et il n’y a rien à recopier d’un classeur à l’autre. Il fonctionne avec Excel 2016 ou ultérieur sur Windows 10 ou 11, et la fonction couvre les décimales, les nombres négatifs et les très grands nombres. Détails : NOMBRE_EN_LETTRES (nouvel onglet).
Ce que l’add-in change : Une fonction native : ni macro, ni classeur .xlsm, et rien à recopier d’un classeur à l’autre. Découvrir Nombres Excel Add-in
Sources
- Formats de fichier pris en charge dans Excel – Support Microsoft (nouvel onglet) : le format
.xlsmconserve le code VBA. - Activer ou désactiver les macros dans les fichiers Microsoft 365 – Support Microsoft (nouvel onglet) : paramètres des macros.
- Utiliser des macros VBA dans Excel sur le web – Support Microsoft (nouvel onglet) : les macros VBA ne s’exécutent pas dans le navigateur.
- Formule ConvNumberLetter et unités – Excel-Pratique (nouvel onglet) : exemple de fonction VBA diffusée sur un forum.
- Fonction LAMBDA – Support Microsoft (nouvel onglet) (page en anglais) : disponibilité dans Excel pour Microsoft 365 et Excel 2024, création d’une fonction nommée dans le Gestionnaire de noms.
Autres questions sur le même sujet
- Comment écrire un nombre en toutes lettres dans Excel ?
- Comment écrire un montant en lettres sur une facture ou un chèque dans Excel ?
- Comment écrire une quantité en lettres sur un bon de commande dans Excel ?
- Comment écrire des montants en lettres dans plusieurs devises dans Excel ?
- Comment écrire un nombre négatif ou décimal en lettres dans Excel ?
- Mes collègues doivent-ils installer l’add-in pour voir les nombres en lettres d’un classeur ?