Chiffre en lettre
bouchra
-
JvDo Messages postés 1924 Date d'inscription Statut Membre Dernière intervention -
JvDo Messages postés 1924 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
comment transformer sur Excel un montant en chiffre en lettre automatiquement
remerciements
comment transformer sur Excel un montant en chiffre en lettre automatiquement
remerciements
5 réponses
-
Télécharger numtext.xla (module complémentaire)
ouvrir exel
Menu <Outils>,<Macros complémentaires>
cocher "Fonctions perso_NumText"
Par exemple un nombre se trouve dans la cellule a1.
Pour avoir le nombre en toutes lettres dans la cellule a2, il faut mettre dans a2 la formule :
=numtext(a1;0)
-
-
-
Function TxtClasse(Classe As Integer, no_Classe As Integer) As String Dim Centaine As Integer, Dizaine As Integer, Unité As Integer, Unités2Chiffres As Integer Dim TxtCentaines As String, TxtDizaines As String, TxtUnités As String Dim TClasses As Variant, Tdizaines As Variant, TUnités As Variant TClasses = Array("", "MILLE", "MILLION", "MILLIARD", "billion") Tdizaines = Array("", "", "VINGT", "TRENTE", "QUARANTE", "CINQUANTE", "SOIXANTE", "SOIXANTE", "QUATRE-VINGT", "QUATRE VINGT") TUnités = Array("", "UN", "DEUX", "TROIS", "QUATRE", "CINQ", "SIX", "SEPT", "HUIT", "NEUF", _ "DIX", "ONZE", "DOUZE", "TREIZE", "QUATORZE", "QUINZE", "SEIZE", "DIX-SEPT", "DIX-HUIT", "DIX-NEUF") If Classe = 0 Then Exit Function ' Pas de un pour mille If Classe = 1 And no_Classe = 1 Then TxtClasse = "MILLE " Exit Function End If ' Centaine = Classe \ 100 Unités2Chiffres = Classe Mod 100 Dizaine = Unités2Chiffres \ 10 Unité = Unités2Chiffres Mod 10 ' Les centaines ----- If Centaine = 1 Then TxtCentaines = "CENT " ElseIf Centaine > 1 Then TxtCentaines = TUnités(Centaine) & " CENT" & IIf(Unités2Chiffres > 0, " ", " ") End If ' Les dizaines ------ TxtDizaines = Tdizaines(Dizaine) If Unité = 1 And Dizaine > 1 And Dizaine < 8 Then TxtDizaines = TxtDizaines & "-ET" End If If Dizaine = 1 Or Dizaine = 7 Or Dizaine = 9 Then Unité = Unité + 10: Dizaine = 0 End If TxtDizaines = TxtDizaines & IIf(Unités2Chiffres = 80, "S", "") If Unités2Chiffres > 19 And Unité > 0 Then TxtDizaines = TxtDizaines & "-" ElseIf Dizaine > 0 Then TxtDizaines = TxtDizaines & " " End If ' Les unités -------- Espace si unité > 0 TxtUnités = TUnités(Unité) & IIf(Unité > 0, " ", "") ' La classe --------- un s sauf pour mille TxtClasse = TClasses(no_Classe) & IIf(no_Classe > 1 And Classe > 1, "S", "") & IIf(no_Classe > 0, " ", "") ' Résultat ---------- TxtClasse = TxtCentaines & TxtDizaines & TxtUnités & TxtClasse End Function -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bonsoir à tous
Une autre possibilité pour cette transformation en lettres, sans macro ni formule apparente.
https://www.cjoint.com/?ALDqFTv2kpF
Cordialement