OVH Cloud OVH Cloud

Convertir nombre entier en années, mois, jour

35 réponses
Avatar
Denys
Bonjour,

Si, en A! j'inscris 370, comment avoir en B1 comme r=E9sultat 1 an et 5 jou=
rs ?
ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jours..... tout =E7=
a sans =E9gard aux ann=E9es bissextiles....

Merci beaucoup

Denys

5 réponses

1 2 3 4
Avatar
Jacky
Re...
Avec xl2007 j'ai en colonne F
18?jours
(18+point d'interrogation+jours)
Dû certainement à un mauvais retour à la ligne dans la barre de formule
L'as-tu aussi avec xl2010
Correction
http://cjoint.com/?CKyudTpuYXb



--
Salutations
JJ


"MichD" a écrit dans le message de news: l6thu8$ds8$
Enfin le voilà le bon!


http://cjoint.com/?CKytZVRD9EL


MichD
---------------------------------------------------------------

Avatar
MichD
Non, il n'y a pas de point d'interrogation dans la colonne "F",
seulement 18 jours.

MichD
---------------------------------------------------------------
Avatar
Jacky
Non, il n'y a pas de point d'interrogation


c'est pas très grave, en reprenant la formule, cela fonctionne.
Mais.........
Il y a une différence de 1 jour entre la fonction et la formule hormis l'année 2013

--
Salutations
JJ


"MichD" a écrit dans le message de news: l6tl8r$m3s$

Non, il n'y a pas de point d'interrogation dans la colonne "F",
seulement 18 jours.

MichD
---------------------------------------------------------------
Avatar
lassautsuisse
Le lundi 18 novembre 2013 17:15:10 UTC+1, Denys a écrit :
Bonjour, Si, en A! j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? ou encore en A1 j'incris 400 et en B1 1 an, 1 mois et 5 jou rs..... tout ça sans égard aux années bissextiles.... Merci beaucoup Denys



Bonjour tous,

Voici pour ma part comment je règlerais ce petit problème :
poser en A1 : 400 (ou tout autre nombre de jours)
poser en XEZ1048497 : =ENT(A1/360)
poser en XEZ1048498 : =ENT(((A1-(B1*360))/30))
poser en XEZ1048499 : =(A1-(B1*360)-(C1*30))
poser en B1 : = XEZ1048497&" an(s) "&XEZ1048498&" mois "&XEZ10484 99&" jour(s) "

Cela décomposera en années, mois, jours le chiffre pour une année de 360 j.

Je vous conseille vivement la plage XEZ1048497:XEZ1048499 car c'est une pet ite plage tranquille, je n'y croise jamais personne et les cellules y sont d'une pureté é-pous-tou-flante.

Enfin bon vous pouvez aussi utiliser la plage surpeuplée C1:E1 (et masque r les colonnes) pour poser les formules ci-dessus. C'est selon votre degr é d'exotisme.

Bien cordialement,

L'assaut suisse
Avatar
lassautsuisse
Bonjour,

Denys : « Si, en A1 j'inscris 370, comment avoir en B1 comme résultat 1 an et 5 jours ? »

Dans le cas présent on part du principe que l’année a 365 jours donc que l’on se base sur un calendrier civil qui comporte 28/29, 30 ou 31 jou rs par mois (par opposition au calendrier financier qui comporte fixement 30 jour par mois et 360 jours par ans).

Denys : « ou encore en A1 j'inscris 400 et en B1 1 an, 1 mois et 5 jours. ... »

Là encore, selon le décomptage proposé, nous nous situons dans une l ogique calendrier civil», basée sur un nombre de jours de 365 par an (e t non 360).

Maintenant si nous nous situons sur un calcul de l’année civil, il est INDIPENSABLE de fixer une DATE DE BASE pour le calcul. Il n’est en effet pas possible de poser un nombre de jours dans un espace indéfini et deman der combien cela fait de mois et de jours.

Démonstration :

Prenons l’exemple de 30j :
Positionnons-nous le 1.1.2013
la réponse sera : 0 ans 0 mois 30 jours

Toujours pour 30 jours :
Positionnons-nous maintenant le 1.2.2013 (le mois de février n’a en 201 3 que 28 j.)
La réponse sera : 0 ans 1 mois 2 jours

C’est pour contourner ce genre de problèmes et simplifier les choses qu e le calendrier commercial avec des mois de 30j fixe et des années de 360 jours, a été mis sur pied pour toute la mathématique lié à la ge stion financière.

Denys : « tout ça sans égard aux années bissextiles.... »

Maintenant dès l’instant où l’on approche le problème avec un ang le « année civile » ce qui semble le cas, il FAUT tenir compte des an nées bissextiles. Ou on est précis, ou on est carré, l’entre deux n ’a pas de sens.

La réponse à la question de Denys avec une approche « année financi ère » est exposée dans mon précédent post.

Pour répondre à Denys avec une approche « année civile » il y a lieu tout d’abord et comme vu précédemment de fixer la DATE DE BASE d u décomptage.

Un deuxième petit problème se situe au niveau du jour 1. Le jour couran t (soit la DATE DE BASE) est-il considéré comme le jour 1 ou le jour 0 ?

Parle-t-on de jour accompli (24 h.) ou la date de base en soit est-elle d éjà décompter comme 1 jour ?

En effet, si je fais par différence sur XL entre le 01.01.2013 et le 01. 01.2013 la réponse sera 0.

Il faut un écart de date (soit passer minuit) pour qu’un jour soit un j our (soit une différence entre le 01.01 et le 02.01).

Logique !

Et pourtant la question de Denys considère en soit le jour 0 comme jour 1 (puisque l’on parle d’un nombre de jours et non d’une différence d e date).

Si je prends l’hypothèse que je demande à l’outil que souhaite Deny s de calculer 1 j.

La réponse attendue est-elle : 0 a. 0m. 0j. ?

Ou bien : 0 a. 0m. 1j. ?

La deuxième option semble assez normale… c’est donc cette voie que j ’ai choisie pour développer le petit outil que vous trouverez ci-joint.

http://cjoint.com/?CKBrPFbBskk

Il fonctionne comme à mon habitude sans une seule ligne de code et s’ar ticule sur ce que j’appelle (à tort surement) le principe des tables d ynamiques.

Bien cordialement,

C.
1 2 3 4