|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : conversion chiffres en lettres [ Divers / Trucs & Astuces ] (habiboula)
Informations & options pour cette discussion
dimanche 25 juin 2006 à 15:53:43 |
conversion chiffres en lettres

habiboula
|
Bonjour J'ai besoin d'aide SVP..; J'ai fait du publipostage avec Word et j'ai besoin d'un module ou une macro qui me permettrait de convertir les chiffres en lettres !!! ex: 2450,00 euros (Deux mille quatre cents euros) Merci de m'expliquer comment intégrer cette macro ou ce module pour que ça s'effectue automatiquement sous word ou excel Merci infiniment J'attends votre collaboration Habib
|
|
|
dimanche 25 juin 2006 à 16:52:46 |
Re : conversion chiffres en lettres

lebarn
|
Bonjour, as-tu rédigé la macro ? Si, oui, je pense que tu devrais lui assigner une touche de raccourci et l'utiliser sur chacun de tes documents. Ou bien l'intégrer à ton document modèle afin qu'il transforme automatiquement les nombres en lettres.
Sinon, ben, si tu que je te la rédige, dis-le.
@+,
|
|
|
dimanche 25 juin 2006 à 17:42:50 |
Re : conversion chiffres en lettres

mortalino
|
Salut,
il me semble avoir vu des sources faisant ce type de conversion. Regarde dans le moteur de recherche, télécharge la source et intègre là à ton document.
@++
--Mortalino--
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement !
|
|
|
dimanche 25 juin 2006 à 18:31:59 |
Re : conversion chiffres en lettres
|
dimanche 25 juin 2006 à 22:04:31 |
Re : conversion chiffres en lettres

habiboula
|
Bonjour! Merci de prendre la peine de m'aider... Effectivement je ne sais pas rédiger une macro.. je vous serais reconnaissant si vous pouvez la rédiger pour moi et m'expliquer comment l'intégrer dans le document Merci d'avance
|
|
|
lundi 26 juin 2006 à 08:28:39 |
Re : conversion chiffres en lettres

mortalino
|
Met ça dans un Module :
PublicFunction MontantEnLettre(Montant) As String- ' Objectif: convertir des montants en lettre selon les règles orthographiques en vigueur
- ' au maroc . Par exemple pour un chèque bancaire
- ' Version valable pour un maximum de 999'999'999.99
Dim varnum, varnumD, varnumD1, varnumU, varlet, résultat, bytcent As Byte
- 'varnum : pour stocker les parties du nombre que l'on va découper
- 'varlet : pour stocker la conversion en lettres d'une partie du nombre
- 'varnumD: pour stocker la partie dizaine d'un nombre à 2 chiffres
- 'varnumU: pour stocker la partie unité d'un nombre à 2 chiffres
- 'résultat: pour stocker les résultats intermédiaires des différentes étapes
Static chiffre(1 To 19) '*** tableau contenant le nom des 19 premiers- 'nombres en lettres
- chiffre(1) = "un"
- chiffre(2) = "deux"
- chiffre(3) = "trois"
- chiffre(4) = "quatre"
- chiffre(5) = "cinq"
- chiffre(6) = "six"
- chiffre(7) = "sept"
- chiffre(8) = "huit"
- chiffre(9) = "neuf"
- chiffre(10) = "dix"
- chiffre(11) = "onze"
- chiffre(12) = "douze"
- chiffre(13) = "treize"
- chiffre(14) = "quatorze"
- chiffre(15) = "quinze"
- chiffre(16) = "seize"
- chiffre(17) = "dix-sept"
- chiffre(18) = "dix-huit"
- chiffre(19) = "dix-neuf"
Static dizaine(1 To 9) '*** tableau contenant les noms des dizaines- dizaine(1) = "dix"
- dizaine(2) = "vingt"
- dizaine(3) = "trente"
- dizaine(4) = "quarante"
- dizaine(5) = "cinquante"
- dizaine(6) = "soixante"
- dizaine(7) = "soixante"
- dizaine(8) = "quatre-vingt"
- dizaine(9) = "quatre-vingt"
- '*** Le traitement des milliards n'est pas pris en compte
If Montant > 999999999.99 Then-
MsgBox"Les milliards ne sont pas traités par ce programme @ @", vbCritical, "Conversion Montant en Lettres" -
ExitFunction EndIf- '*** Traitement du cas zéro
If Montant >= 1 Then- résultat = ""
Else- résultat = "zéro"
GoTo FinTraitement
EndIf- '*** Traitement des millions
- varnum =
Int(Montant / 1000000)
If varnum > 0 Then-
GoSub CentaineDizaine
- résultat = varlet + " million"
-
If varlet <> "un"Then résultat = résultat + "s" EndIf- '*** Traitement des milliers
- varnum =
Int(Montant) Mod 1000000
- varnum =
Int(varnum / 1000)
If varnum > 0 Then-
GoSub CentaineDizaine
-
If varlet <> "un"Then - résultat = résultat + " " + varlet
- résultat = résultat & " mille"
-
Else - résultat = "mille"
-
EndIf EndIf- '*** Traitement des centaines et dizaines
- varnum =
Int(Montant) Mod 1000
If varnum > 0 Then-
GoSub CentaineDizaine
- résultat = résultat + " " + varlet
EndIf- résultat =
LTrim(résultat)
- varlet =
Right$(résultat, 4)
- '*** Traitement du "s" final pour mille, cent et du "de" pour million
SelectCase varlet
-
Case"ille" -
If Montant <> 1000 Then résultat = résultat + "s" -
Case"cent" -
If bytcent <> 1 Then résultat = résultat + "s" -
Case"lion", "ions" - résultat = résultat + " de"
EndSelect- FinTraitement:
- '*** Indication du terme devise
- résultat = résultat + "Dh"
-
If Montant >= 2 Then résultat = résultat + "s" - '*** Traitement des centimes
- varnum =
Int((Montant - Int(Montant)) * 100 + 0.5) '*** On additionne 0,5 afin de compenser - '*** les erreurs de calcul dues aux arrondis
-
If varnum > 0 Then -
GoSub CentaineDizaine
- résultat = résultat + " et " + varlet + " centime"
-
If varnum > 1 Then résultat = résultat + "s" -
EndIf - '*** Conversion 1ère lettre en majuscule
- résultat =
UCase(Left(résultat, 1)) + Right(résultat, Len(résultat) - 1)
- '*** Renvoie du résultat de la fonction et fin de la fonction
- MontantEnLettre = résultat
ExitFunction- CentaineDizaine:
- varlet = ""
- '*** Traitement des centaines
-
If varnum >= 100 Then - varlet = chiffre(
Int(varnum / 100))
- varnum = varnum Mod 100
-
If varlet = "un"Then - varlet = "cent "
- bytcent = 1
-
Else - varlet = varlet + " cent "
-
EndIf -
EndIf - '*** Traitement des dizaines
-
If varnum <= 19 Then'*** Cas où la dizaine est <20 -
If varnum > 0 Then - varlet = varlet + chiffre(varnum)
-
EndIf -
Else - varnumD =
Int(varnum / 10) '*** chiffre des dizaines - varnumU = varnum Mod 10 '*** chiffre des unités
- '*** génération des dizaines en lettres
- varlet = varlet + dizaine(varnumD)
-
If varnumD = 7 Or varnumD = 9 Then - varnumD1 = varnum - (varnumD - 1) * 10
- varlet = varlet + " " + chiffre(varnumD1)
EndIf- '*** traitement du séparateur des dizaines et unités
-
If varnumU = 1 Then - varlet = varlet + " et "
-
EndIf -
EndIf -
- '*** génération des unités
-
If varnumU <> 0 Then -
If varnumD = 7 Or varnumD = 9 Then - varlet = varlet
-
Else - varlet = varlet + chiffre(varnumU)
-
EndIf -
EndIf - '*** Suppression des espaces à gauche et retour
- varlet =
RTrim(varlet)
-
Return EndFunction Merci à WAHIDAbdelilah pour le code.
Ensuite insère un UserForm (UserForm1) :
Tu crées 1 bouton (CommandButton1) et 2 TextBox (TextBox1 & TextBox2)
Private Sub CommandButton1_Click() Dim Montant As Long Montant = TextBox1.Value TextBox2.Text = MontantEnLettre(Montant) End Sub
En gros, saisie le nombre dans la première TextBox et quand tu cliques sur le bouton, le résultat s'affiche dans la 2eme TextBox
@++
Mortalino  Le Mystérieux Chevalier "Provençal, le Gaulois" N'oubliez pas de lire le règlement
|
|
|
samedi 14 février 2009 à 12:43:12 |
Re : conversion chiffres en lettres

fouadvnet
|
slt j'ai un probléme je veux integrer le code de convertire un montant calculer dans un crystalreport en lettre automatiquement sans ecrire le montant
|
|
|
Cette discussion est classé dans : chiffres, module, conversion, word, lettres
Répondre à ce message
Sujets en rapport avec ce message
CONVERSION DES CHIFFRES VERS LES LETTRES [ par malcom78 ]
Bonjour à tous, J'essaye de convertir des chiffres en lettres dans une table access.Alors dans une table, j'ai une colonne ou il y a des chiffres et d
conversion( chiffres en lettres) [ par benzaid ]
bonjour tout le monde je cherche comment faire pour convertir un chiffre en lettre en utilisant deux deux zone de texte : une pour saisir le no
Chiffres et Lettres [ par valime ]
Le but :Génerer des codes à 6 chiffres uniques à l'aide d'un nom, prénoms et date d'anniverssaire d'une personne (dans un tableau excel).Personnelleme
[VBA-WORD] Chargement de module [ par billybond ]
Bonjour un tous.J'ai un petit probleme qui nécessite votre aide.J'utilise des macro dans word pour generer automatiquement des documentations concerna
Tableau [ par lispo ]
Bonjour a tous,et a toutesje debut en vba et je voudrais savoir comment importer un tableau qui se trouve dans un module(module_1) vers ma Formeet d
Séparation de chiffres et lettres [ par ShiZZle971 ]
Salut,Je fais un logiciel et j'aurais besoin de pouvoir trier une chaine de caractère c'est à dire qu'il me faut savoir où sont les lettres.Exemple :
Conversion Word -> HTML [ par Thermosam ]
Il me faudrait les sources d'un programme qui à partir d'un fichier Word génère un fichier correspondant en HTML (avec tous les TAGS).
Convertir des caractères en chiffres/lettres [ par tinux ]
Bonjour, y a t-il une méthode très simple (donc pas très fiable) mais qui puisse juste convertir un texte en chiffre par exemple, et faire revenir les
conversion de document word en tiff multipages de type 4 [ par foulman ]
Bonjour à tous,Un vrai casse-tête........merci d'avance à ceux qui vont répondre.Je cherche à convertir des documents word (1 à n pages) en tiff mult
!!!!!!!!!!!!!!Sous VBA, inserer un objet dans une page WORD!!!!!!!!! [ par liban123 ]
Salut a tout les softeur!je souhaiterai inserer un objet (un simple trait) que jai créer dans une feuille, dans une page Word.1) cette page word a été
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|