date en toute lettre

chac-attack

XLDnaute Nouveau
Bonjour à tous,

voila ma question, dans une cellule j'ai une date 13/10/1981 par exemple, je souhaiterai que cette date soit affichée en toutes lettres treize octobre mile neuf cent quatre-vingt un.:eek:

est-ce possible?

merci d'avance

Chac-attack
 

Tibo

XLDnaute Barbatruc
Re : date en toute lettre

Bonjour,

Une solution en 2 formules :

La date en A4,

1ère formule :

Code:
=CHOISIR(JOUR(A4)/10+1;"";"";"vingt";"trente")&SI(JOUR(A4)<20;"";
SI(DROITE(JOUR(A4))*1<>0;SI(DROITE(JOUR(A4))*1=1;" et ";"-");""))&
CHOISIR(JOUR(A4)-CHOISIR(JOUR(A4)/10+1;0;0;2;3)*10+1;"";SI(JOUR(A4)=1;
"premier";"un");"deux";"trois";"quatre";"cinq";"six";"sept";"huit";"neuf";"dix";
"onze";"douze";"treize";"quatorze";"quinze";"seize";"dix-sept";"dix-huit";
"dix-neuf")&" "&TEXTE(x;"mmmm")

2ème formule :

Code:
=CHOISIR(ANNEE(A4)/1000;"";"deux ";"trois ";"quatre ";"cinq ";"six ";
"sept ";"huit ";"neuf ")&"mille"&" "&SI(DROITE(ANNEE(A4);3)*1>99;CHOISIR(
DROITE(ANNEE(A4);3)/100;"";"deux ";"trois ";"quatre ";"cinq ";"six ";"sept ";
"huit ";"neuf ")&"cent"&SI(DROITE(ANNEE(A4);3)*1>100;SI(DROITE(ANNEE(A4);2)*1=0;
"s";" "););)&CHOISIR(DROITE(ANNEE(A4);2)/10+1;"";"";"vingt";"trente";
"quarante";"cinquante";"soixante";"soixante";"quatre-vingt"&SI(DROITE(ANNEE(A4))
*1=0;"s";);"quatre-vingt")&SI(DROITE(ANNEE(A4);2)*1<20;"";SI(ET(OU(DROITE(
ANNEE(A4))*1<>0;DROITE(ANNEE(A4);2)*1=70;DROITE(ANNEE(A4);2)
*1=90));SI(ET(DROITE(ANNEE(A4))*1=1;DROITE(ANNEE(A4);2)*1<80);
" et ";"-");""))&CHOISIR(DROITE(ANNEE(A4);2)*1-CHOISIR(DROITE(
ANNEE(A4);2)/10+1;0;0;2;3;4;5;6;6;8;8)*10+1;"";"un";"deux";
"trois";"quatre";"cinq";"six";"sept";"huit";"neuf";"dix";"onze";"douze";
"treize";"quatorze";"quinze";"seize";"dix-sept";"dix-huit";"dix-neuf")

Bon, pour simplifier la chose, je joins le fichier.

Reste à faire une concaténation.

@+
 

Pièces jointes

  • date en toutes lettres.zip
    5.1 KB · Affichages: 239

abcd

XLDnaute Barbatruc
Re : date en toute lettre

Bonjour,

Autre approche, formule moins longue mais colonne supplémentaire (masquée)

abcd

Edition :
Il me semble qu'il y aurait deux petits points à modifier sous le fichier joint :
"un" aurait avantage à être remplacé par "premier" → premier juin deux mille
"quatre vingt" s'écrit "quatre-vingt" s'il est suivi d'un autre chiffre et "quatre-vingts" s'il est seul.
Il y a eu dernièrement un message sur le forum à ce sujet.
De plus, je ne sais pas s'il faut écrire "quatre-vingt et un" (comme soixante et un) ou quatre-vingt un"
 

Pièces jointes

  • date en lettres.zip
    20.8 KB · Affichages: 140
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : date en toute lettre

Bonjour à tous

Bravo à Tibo pour sa super formule, on voit les ProFormulistes.

Pour abcd, je cite: "Il y a eu dernièrement un message sur le forum à ce sujet"

N'était-ce pas plutôt convertir un nombre en lettre (a moins que j'ai loupé quelque chose)?
 

Tibo

XLDnaute Barbatruc
Re : date en toute lettre

re,

Le fil évoqué est celui-ci :

https://www.excel-downloads.com/threads/chiffre-en-lettres.96822/

On y découvre qu'il y aurait en fait 2 règles pour l'écriture des nombres. L'une ancienne (celle que j'ai intégré dans ma formule : trait d'union pour les nombres < 100, sans et) et une nouvelle (traits d'union partout).

En ceui concerne 80 :

non suivi : quatre-vingts
suivi : quatre-vingt-un

Voilou

Bonne soirée à tous

@+
 

chac-attack

XLDnaute Nouveau
Re : date en toute lettre

Très bien toutes ces solutions, merci, aujourd'hui une autre question me vien. J'aimerai ajouter des années à une date. Les années bissextiles me posent problèmes. Par exemple, en A1 j'ai 13/10/1983 à cette date je souhaite rajouter 1 ans ou 5 ans en passant par une formule. 13/10/1983 deviendrai donc 13/10/1984 ou 13/10/1988. voila pour l'instans je bloque sur les années bissextiles j'ai essayer de finter mais je me retrouve à un jour de moins pour les autres années.

merci de vos réponses
 

abcd

XLDnaute Barbatruc
Re : date en toute lettre

Bonsoir,

=DATE(ANNEE(A1)+5;MOIS(A1);JOUR(A1))
Le 5 pour 5 années.

Il restera le problème du 29/02 qui deviendra 01/03 si le nombre d'années ajouté n'est pas un multiple de quatre.

abcd
 

Discussions similaires

Statistiques des forums

Discussions
312 801
Messages
2 092 245
Membres
105 314
dernier inscrit
SABER ABD