Comment convertir des devises en texte en toutes lettres dans Excel ?
Pour les non-natifs qui utilisent l'anglais comme deuxième langue, il est parfois difficile de transformer directement un nombre en devise en mots anglais lorsque le chiffre est trop long. Dans cet article, vous apprendrez comment facilement convertir une devise en texte en toutes lettres dans Excel.
Convertir des devises en texte avec du code VBA
Convertir des devises en texte avec Kutools pour Excel
Convertir des devises en texte avec du code VBA
Avec le code VBA ci-dessous, vous pouvez convertir un nombre en devise en mots anglais.
1. Appuyez sur Alt + F11 pour ouvrir la boîte de dialogue Microsoft Visual Basic pour Applications.
2. Dans la boîte de dialogue Microsoft Visual Basic pour Applications, cliquez sur Insérer > Module. Ensuite, copiez et collez le code ci-dessous dans la fenêtre de code.
Code VBA : Convertir un nombre en devise en mots anglais
Function NumberstoWords(ByVal pNumber)
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
NumberstoWords = 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. Appuyez simultanément sur Alt + Q pour fermer la boîte de dialogue Microsoft Visual Basic pour Applications.
4. Sélectionnez une cellule vide (B1) adjacente à la cellule que vous souhaitez convertir en mots, entrez la formule =NumberstoWords(A1), puis appuyez sur la touche Entrée.
Remarque : A1 est la cellule contenant le nombre en devise. Vous pouvez la modifier selon vos besoins.
5. Sélectionnez la cellule B1, faites glisser la poignée de recopie vers le bas pour obtenir tous les mots anglais correspondant aux nombres en devise.
Convertir des devises en texte avec Kutools pour Excel
Ce long code VBA semble compliqué. Voici un outil pratique pour résoudre facilement ce problème. Avec l'utilitaire Nombres en Mots de Kutools pour Excel, convertir des devises en mots ne sera plus un problème. Veuillez procéder comme suit.
Avant d'appliquer Kutools pour Excel, veuillez d'abord le télécharger et l'installer.
1. Sélectionnez les cellules contenant les nombres en devise que vous souhaitez convertir.
2. Cliquez sur Kutools > Texte > Nombres en Mots. Voir capture d'écran :
3. Dans la boîte de dialogue Nombres en Mots de Devise, sélectionnez l'option Anglais, puis cliquez sur le bouton OK ou Appliquer.
Les nombres en devise sélectionnés sont immédiatement convertis en mots anglais.
Kutools pour Excel - Boostez Excel avec plus de 300 outils essentiels. Profitez de fonctionnalités IA gratuites en permanence ! Obtenez-le maintenant
Meilleurs outils de productivité Office
Dynamisez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité la plus essentielle pour vous...
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, au lieu d’ouvrir de nouvelles fenêtres.
- Augmentez votre productivité de50% et réduisez des centaines de clics de souris chaque jour!