Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Convertire le nombre de mois en année mois

Yann71

XLDnaute Occasionnel
Bonjour la com.
Je ne trouve pas l'information que je recherche sur GOOGLE, donc je me dirige ici car pour moi le meilleur centre de recherche est ICI.
J'aimerai connaître la formule, qui me permet d'afficher des mois en année mois. Un exemple concret:

Dans cellule A1 j'ai 32 qui correspond dans ma colonne aux nombres de mois et j'aimerai qu'en A2 s'affiche 2 ans et 8 mois.

Merci d'avance pour votre aide.
 
Dernière édition:

R@chid

XLDnaute Barbatruc
Re,
Ci la cellule A1 contient que 8 ma formule va renvoyer 0 ans et 8 mois, donc le test MOD() a fait l'affaire.
Je ne fais pas n'importe quoi monsieur patricktoulon, il faut déjà comprendre la logique de la formule avant de commencer à dire du n'importe quoi.
 

patricktoulon

XLDnaute Barbatruc

je me régale j'apprends moi aussi les failles dans l'utilisation de MOD

dudu2
=SI(A1>=12;ENT(A1/12) & " an" & SI( ENT(A1/12) > 1; "s"; "");"" ) & SI(ET(ENT(A1/12) >0;MOD(A1;12) >0);" et ";"") & SI(MOD(A1;12) >0;MOD(A1;12) & " mois";"")
moi
=SI(A3<>0;SI(A3<12;A3 &" mois";SI(ENT(A3/12)>0;ENT(A3/12)&" an";"")&SI(ENT(A3/12)>1;"s";"") & SI(ET(A3>=12;(A3/12)-ENT(A3/12)>0);" et " & 12*(A3/12-(ENT(A3/12))) & " mois";""));"")
 

Dudu2

XLDnaute Barbatruc
Sans trop forcer à partir du post #2:
=SI(ESTNUM(A1);
SI(A1>=12;ENT(A1/12)&" an"&SI(ENT(A1/12)>1;"s";"");"")&SI(ET(ENT(A1/12)>0;MOD(A1;12) >0);" et ";"")&SI(MOD(A1;12)>0;MOD(A1;12)&" mois";"");
"")

C'est celle de jpantibes au choix avec celle de patricktoulon. Ça reste bord de mer.
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
@R@child dans ce context si 'blablabla tototitiRachidpatricdudu" vaudra toujours zero c'est du text

voici la tienne corrigée d'une autre façon ça mérite le coup d’œil
j'ai corrigé le "s" auto que tu avais et je laisse ta formule tel quel mais dans un triple substitue
on a donc ainsi la gestion implicite des vides (rigolo non?)
=SUBSTITUE(SUBSTITUE(SUBSTITUE(ENT(A3/12)&" an"&SI(ENT(A3/12)>1;"s";"")&" et "&MOD(A3;12)&" mois";"0 an et ";"");" et 0 mois";"");"0 mois";"")

question simplification on y est bien là
 

Dudu2

XLDnaute Barbatruc
Re,
patricktoulon a dit:
re
=SI(A1<>0;
=SI(ET(ESTNUM(A1);A1>0);
that's kiffkiff on this context

Non ce n'est pas kifkif
Cordialement

Si dans le contexte de la formule, c'est kifkif, je l'ai remarqué, vérifié et corrigé avant que patricktoulon l'ait notifié !
=SI(ESTNUM(A1); =SI(ET(ESTNUM(A1);A1>0);
SI(A1>=12;ENT(A1/12)&" an"&SI(ENT(A1/12)>1;"s";"");"")&SI(ET(ENT(A1/12)>0;MOD(A1;12) >0);" et ";"")&SI(MOD(A1;12)>0;MOD(A1;12)&" mois";"");
"")
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous,

Celle là devrait le faire aussi:
VB:
=SUPPRESPACE(REPT(ENT(A1/12)&" an";ENT(A1/12)>0)&REPT("s";ENT(A1/12)>1)&REPT(" et ";MOD(A1;12)*(ENT(A1/12)>0) >0)&REPT(" "&MOD(A1;12)&" mois";MOD(A1;12)>0))
 

Pièces jointes

  • Yann71- mois en années- v1.xlsx
    9.1 KB · Affichages: 2

R@chid

XLDnaute Barbatruc
Bonjour @ tous,
Salut mapomme,
je ne me prends pas la tête pour une question n'est bien détaillée, car après tout cela, le demandeur va venir dire que La cellule A1 ne va pas contenir du texte, ni va être vide, et le nombre de mois va toujours être plus grand que 12.
 

patricktoulon

XLDnaute Barbatruc
a ben en voila un bon raisonnement
ben t'a tout faux (sans vouloir t’offenser)

on propose des formules
ce qui veux dire que
la formule doit s’étendre MAIS !!!! et oui mais jusque ou !!!!!
jusqu’à la first vide
jusqu’à une cellule avec texte
jusqu’à >12 ou tant que <>0

A OUI !! et comment veux tu le gérer sans ces conditions la dans les formules


son tableau peut changer de dimension a tout moment il fera comment (il modifiera la formule )
ou il ajoutera des lignes de formule dans ton tableau???

j'ai une bonne voiture mais comme je m'en sert pas je met pas les roues et le moteur c'est pas la peine je les mettrais quand je partirais avec
 
Dernière édition:

R@chid

XLDnaute Barbatruc
Re,
pour ceux qui ont installé la Macro Complémentaire MoreFunc, ils peuvent profiter de la fonction DIFFDATE().


@patricktoulon
pour te dire mon ami, je n'appelle pas une formule lorsque je me trouve entre plusieurs SI() imbriquées.

Cordialement
 

patricktoulon

XLDnaute Barbatruc
re
le 0 ans peut être acceptable et quoi que ça dépend de son point de vue mais le 0 an 8 mois heu....


tu dis
"ca fait 0 ans 8 mois 0 heures que l'on c'est pas vu"
ou
"ca fait 8 mois que l'on c'est pas vu"

tout ce qui brille n'est pas d'or

a ce rythme on en a pour 3 flèche flèche flèche ans
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…