Comment écrire ou convertir des nombres en mots anglais dans Excel ?
Convertir des nombres en leurs équivalents en mots anglais dans Excel peut être une compétence précieuse, en particulier pour les rapports financiers, la facturation ou la création de chèques. Bien qu'Excel ne dispose pas d'une fonction intégrée à cet effet, il existe plusieurs méthodes pour y parvenir. Cet article vous guidera à travers les moyens les plus efficaces de convertir des nombres en mots dans Excel, avec des conseils d'optimisation.

Écrire ou convertir des nombres en mots anglais avec du code VBA
Le long code VBA suivant peut vous aider à écrire des nombres sous forme de chaînes de texte. Suivez les étapes ci-dessous :
1. Maintenez les touches "ALT + F11" enfoncées, et cela ouvre la fenêtre "Microsoft Visual Basic for Applications".
2. Cliquez sur "Insérer" > "Module", puis collez la macro suivante dans la fenêtre Module.
VBA : Écriture des nombres monétaires en mots anglais dans Excel
Function SpellNumberToEnglish(ByVal pNumber)
'Updateby20131113
Dim Dollars, Cents
arr = Array("", "", " Thousand ", " Million ", " Billion ", " Trillion ")
pNumber = Trim(Str(pNumber))
xDecimal = InStr(pNumber, ".")
If xDecimal > 0 Then
Cents = GetTens(Left(Mid(pNumber, xDecimal + 1) & "00", 2))
pNumber = Trim(Left(pNumber, xDecimal - 1))
End If
xIndex = 1
Do While pNumber <> ""
xHundred = ""
xValue = Right(pNumber, 3)
If Val(xValue) <> 0 Then
xValue = Right("000" & xValue, 3)
If Mid(xValue, 1, 1) <> "0" Then
xHundred = GetDigit(Mid(xValue, 1, 1)) & " Hundred "
End If
If Mid(xValue, 2, 1) <> "0" Then
xHundred = xHundred & GetTens(Mid(xValue, 2))
Else
xHundred = xHundred & GetDigit(Mid(xValue, 3))
End If
End If
If xHundred <> "" Then
Dollars = xHundred & arr(xIndex) & Dollars
End If
If Len(pNumber) > 3 Then
pNumber = Left(pNumber, Len(pNumber) - 3)
Else
pNumber = ""
End If
xIndex = xIndex + 1
Loop
Select Case Dollars
Case ""
Dollars = "No Dollars"
Case "One"
Dollars = "One Dollar"
Case Else
Dollars = Dollars & " Dollars"
End Select
Select Case Cents
Case ""
Cents = " and No Cents"
Case "One"
Cents = " and One Cent"
Case Else
Cents = " and " & Cents & " Cents"
End Select
SpellNumberToEnglish = Dollars & Cents
End Function
Function GetTens(pTens)
Dim Result As String
Result = ""
If Val(Left(pTens, 1)) = 1 Then
Select Case Val(pTens)
Case 10: Result = "Ten"
Case 11: Result = "Eleven"
Case 12: Result = "Twelve"
Case 13: Result = "Thirteen"
Case 14: Result = "Fourteen"
Case 15: Result = "Fifteen"
Case 16: Result = "Sixteen"
Case 17: Result = "Seventeen"
Case 18: Result = "Eighteen"
Case 19: Result = "Nineteen"
Case Else
End Select
Else
Select Case Val(Left(pTens, 1))
Case 2: Result = "Twenty "
Case 3: Result = "Thirty "
Case 4: Result = "Forty "
Case 5: Result = "Fifty "
Case 6: Result = "Sixty "
Case 7: Result = "Seventy "
Case 8: Result = "Eighty "
Case 9: Result = "Ninety "
Case Else
End Select
Result = Result & GetDigit(Right(pTens, 1))
End If
GetTens = Result
End Function
Function GetDigit(pDigit)
Select Case Val(pDigit)
Case 1: GetDigit = "One"
Case 2: GetDigit = "Two"
Case 3: GetDigit = "Three"
Case 4: GetDigit = "Four"
Case 5: GetDigit = "Five"
Case 6: GetDigit = "Six"
Case 7: GetDigit = "Seven"
Case 8: GetDigit = "Eight"
Case 9: GetDigit = "Nine"
Case Else: GetDigit = ""
End Select
End Function
3. Ensuite, enregistrez le code et revenez à la feuille de calcul, dans la cellule adjacente B2, entrez la formule =SpellNumberToEnglish(A2), voir capture d'écran :
4. Appuyez ensuite sur la touche Entrée, sélectionnez la cellule C2, puis faites glisser la poignée de remplissage sur la plage contenant cette formule selon vos besoins. Et tous les montants monétaires ont été écrits en mots anglais. Voir capture d'écran :
Écrire ou convertir des nombres en mots anglais avec Kutools pour Excel
Rationalisez vos tâches Excel et augmentez votre productivité en utilisant Kutools pour Excel. Sa fonction puissante de conversion de nombres en mots offre plus de 40 options de conversion de devises, vous permettant de convertir facilement des nombres en mots pour les dollars américains, les YUAN chinois ou toute autre devise en quelques clics.
1. Sélectionnez la plage de nombres que vous souhaitez écrire, puis cliquez sur "Kutools" > "Texte" > "Nombres en Mots".
2. Dans la boîte de dialogue qui apparaît, choisissez "Anglais" dans les "Langues". Vous pouvez également prévisualiser les résultats dans le volet "Aperçu" à droite. Voir capture d'écran :
3. Cliquez ensuite sur OK ou Appliquer. Et tous les montants en prix ont été convertis en chaînes de texte dans la plage d'origine.
Remarque: Si vous souhaitez simplement convertir des nombres en mots anglais (pas en devise), cochez la case Ne pas convertir en unité monétaire.
En suivant les étapes et les optimisations décrites dans ce guide, vous pouvez convertir efficacement des nombres en mots et rationaliser votre flux de travail. Que vous prépariez des rapports financiers ou créiez des factures, maîtriser cette compétence vous fera gagner du temps et des efforts. Si vous êtes intéressé par l'exploration de plus d'astuces Excel, notre site Web propose des milliers de tutoriels.
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !