Prix en chiffre transformé en lettres
Résolu/Fermé
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
-
20 janv. 2016 à 19:21
US17 Messages postés 50 Date d'inscription dimanche 20 septembre 2015 Statut Membre Dernière intervention 9 mai 2023 - 2 févr. 2016 à 20:22
US17 Messages postés 50 Date d'inscription dimanche 20 septembre 2015 Statut Membre Dernière intervention 9 mai 2023 - 2 févr. 2016 à 20:22
A voir également:
- Prix en chiffre transformé en lettres
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
- Excel trier par ordre croissant chiffre - Guide
- Clavier iphone chiffre et lettre - Guide
- Prix licence windows 10 - Accueil - Installation
5 réponses
Bonjour
voila une function:
et dans la cellule mettre =Chiffrelettre(A1)
A+
Maurice
voila une function:
Function chiffrelettre(s) Dim a As Variant, gros As Variant a = Array("", "un", "deux", "trois", "quatre", "cinq", "six", "sept", _ "huit", "neuf", "dix", "onze", "douze", "treize", "quatorze", "quinze", "seize", "dix sept", _ "dix huit", "dix neuf", "vingt", "vingt et un", "vingt deux", "vingt trois", "vingt quatre", _ "vingt cinq", "vingt six", "vingt sept", "vingt huit", "vingt neuf", "trente", "trente et un", _ "trente deux", "trente trois", "trente quatre", "trente cinq", "trente six", "trente sept", _ "trente huit", "trente neuf", "quarante", "quarante et un", "quarante deux", "quarante trois", _ "quarante quatre", "quarante cinq", "quarante six", "quarante sept", "quarante huit", _ "quarante neuf", "cinquante", "cinquante et un", "cinquante deux", "cinquante trois", _ "cinquante quatre", "cinquante cinq", "cinquante six", "cinquante sept", "cinquante huit", _ "cinquante neuf", "soixante", "soixante et un", "soixante deux", "soixante trois", _ "soixante quatre", "soixante cinq", "soixante six", "soixante sept", "soixante huit", _ "soixante neuf", "soixante dix", "soixante et onze", "soixante douze", "soixante treize", _ "soixante quatorze", "soixante quinze", "soixante seize", "soixante dix sept", _ "soixante dix huit", "soixante dix neuf", "quatre-vingts", "quatre-vingt un", _ "quatre-vingt deux", "quatre-vingt trois", "quatre-vingt quatre", "quatre-vingt cinq", _ "quatre-vingt six", "quatre-vingt sept", "quatre-vingt huit", "quatre-vingt neuf", _ "quatre-vingt dix", "quatre-vingt onze", "quatre-vingt douze", "quatre-vingt treize", _ "quatre-vingt quatorze", "quatre-vingt quinze", "quatre-vingt seize", "quatre-vingt dix sept", _ "quatre-vingt dix huit", "quatre-vingt dix neuf") gros = Array("", "billions", "milliards", "millions", "mille", "euros", "billion", _ "milliard", "million", "mille", "euro") sp = Space(1) chaine = "00000000000000" centime = s * 100 - (Int(s) * 100) s = Str(Int(s)): Lg = Len(s) - 1: s = Right(s, Lg): Lg = Len(s) If Lg < 15 Then chaine = Mid(chaine, 1, (15 - Lg)) Else chaine = "" s = chaine + s 'billions au centaines gp = 1 For k = 1 To 5 X = Mid(s, gp, 1): C = a(Val(X)) X = Mid(s, gp + 1, 2): D = a(Val(X)) If k = 5 Then If t2 <> "" And C & D = "" Then mydz = "Euros" & sp: GoTo Fin If T <> "" And C = "" And D = "un" Then mydz = "un euros" & sp: GoTo Fin If T <> "" And t2 = "" And C & D = "" Then mydz = "d'euros" & sp: GoTo Fin If T & C & D = "" Then myct = "": mydz = "": GoTo Fin End If If C & D = "" Then GoTo Fin If D = "" And C <> "" And C <> "un" Then mydz = C & sp & "cents " & gros(k) & sp: GoTo Fin If D = "" And C = "un" Then mydz = "cent " & gros(k) & sp: GoTo Fin If D = "un" And C = "" Then myct = IIf(k = 4, gros(k) & sp, "un " & gros(k + 5) & sp): GoTo Fin If D <> "" And C = "un" Then mydz = "cent" & sp If D <> "" And C <> "" And C <> "un" Then mydz = C & sp & "cent" + sp myct = D & sp & gros(k) & sp Fin: t2 = mydz & myct T = T & mydz & myct mydz = "": myct = "" gp = gp + 3 Next D = a(centime) If T <> "" Then myct = IIf(centime = 1, " centime", " centimes") If T = "" Then myct = IIf(centime = 1, " centime d'euro", " centimes d'euro") If centime = 0 Then D = "": myct = "" chiffrelettre = T & D & myct End Function
et dans la cellule mettre =Chiffrelettre(A1)
A+
Maurice
tyranausor
Messages postés
3545
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
1 avril 2022
2 035
20 janv. 2016 à 19:43
20 janv. 2016 à 19:43
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
20 janv. 2016 à 19:55
20 janv. 2016 à 19:55
Merci tyranausor.
J'ai commencé à éplucher Google il y a quelques heures.
Pas mal de liens morts ou incomplets, de réponses qui ne fonctionnent pas et de sites ou je ne veux pas aller (genre Softonic).
Je continue mes "fouilles", et je reviens vers vous si je ne trouve pas.
Bonne soirée et merci encore.
J'ai commencé à éplucher Google il y a quelques heures.
Pas mal de liens morts ou incomplets, de réponses qui ne fonctionnent pas et de sites ou je ne veux pas aller (genre Softonic).
Je continue mes "fouilles", et je reviens vers vous si je ne trouve pas.
Bonne soirée et merci encore.
Raymond PENTIER
Messages postés
58802
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
10 janvier 2025
17 264
>
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
21 janv. 2016 à 00:16
21 janv. 2016 à 00:16
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
>
Raymond PENTIER
Messages postés
58802
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
10 janvier 2025
21 janv. 2016 à 19:09
21 janv. 2016 à 19:09
merci Raymond.
Le soucis est que je voudrai utiliser cela sur mon PC de boulot.
Hors, ce genre de manip m'est interdit. Mes accès sous Windows sont très restreints.
C'est dans ce but que je voudrais avoir un classeur avec cette fonction.
Je pourrais, comme je l'ai fais pour 2 ou 3 choses, y déposer ce dernier et l'utiliser.
Bonne soirée.
Le soucis est que je voudrai utiliser cela sur mon PC de boulot.
Hors, ce genre de manip m'est interdit. Mes accès sous Windows sont très restreints.
C'est dans ce but que je voudrais avoir un classeur avec cette fonction.
Je pourrais, comme je l'ai fais pour 2 ou 3 choses, y déposer ce dernier et l'utiliser.
Bonne soirée.
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
25 janv. 2016 à 18:22
25 janv. 2016 à 18:22
Merci Maurice.
Fonctionne nickel...
Bonne soirée
Fonctionne nickel...
Bonne soirée
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
28 janv. 2016 à 20:20
28 janv. 2016 à 20:20
Bonsoir Maurice.
Tout allait bien, mais depuis sauvegarde en format 2003 (est ce bien cela ?),
j'ai un plantage. (beaucoup de manips pour adapter un arrière plan ?)
Je joins le fichier.
Merci
https://www.cjoint.com/c/FACts0l6TQm
Tout allait bien, mais depuis sauvegarde en format 2003 (est ce bien cela ?),
j'ai un plantage. (beaucoup de manips pour adapter un arrière plan ?)
Je joins le fichier.
Merci
https://www.cjoint.com/c/FACts0l6TQm
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
ses pas un format 2003
ses un format sans macro >= 2007
voila un format 2003
http://www.cjoint.com/c/FACtUg1cMz7
A+
Maurice
ses pas un format 2003
ses un format sans macro >= 2007
voila un format 2003
http://www.cjoint.com/c/FACtUg1cMz7
A+
Maurice
US17
Messages postés
50
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
9 mai 2023
2 févr. 2016 à 20:22
2 févr. 2016 à 20:22
Merci Maurice.
Toujours aussi efficace.
Bonne soirée
Toujours aussi efficace.
Bonne soirée
25 janv. 2016 à 21:45
25 janv. 2016 à 21:53
A mettre dans un Module
A+
Maurice
25 janv. 2016 à 22:42
29 janv. 2016 à 04:39
ligne 44 : centime ne vaut pas 1 pour les valeurs de s égales à 2,01; 16,01; 17,01; 18,01; 19,01; 20,01; 64,01; 65,01; 66,01; 67,01; 68,01; 69,01; 70,01; 71,01; 72,01; 73,01 .......
la conséquence n'est pas dramatique mais il traîne un pluriel à "centimes" pour ces valeurs.
un suffit à remédier à cette situation.
cordialement