Durée

[Résolu]
Signaler
Messages postés
127
Date d'inscription
mardi 10 mai 2005
Statut
Membre
Dernière intervention
2 août 2021
-
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
bonjour Mrs,

Comment calculer
A = date au format jj/mm/aaaa
B = ? un an après
de sorte que après un an B est chaque fois incrémenté +1
jj+1
mm+1
aaaa+1
si nous sommes A = 10/12/2000
B = 11/01/2001 soit un an après.
Merci
Colby

5 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Et puis dans l'absolu, 1 an après le 10/12/2000 c'est bien le 10/12/2001 et non pas le 11/12/2001
Le 11/12/2001 c'est 1an et 1 jour !

De plus si on applique la formule jj+1 mm+1 aaaa+1 à 10/12/2000 on obtient
- soit 11/01/2001 si on réfléchie seulement en terme de valeur de chacun des éléments de la date
- soit 11/01/2002 si on réfléchi en terme de date :       
       10/12/2000 + 1an = 10/12/2001
       10/12/2001 + 1 mois = 10/01/2002
       10/01/2002 + 1 jour = 11/01/2002

Il convient donc de clairement définir le réel besoin

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Donc s'il s'agit simplement de rajouter 1 année à une date, un petit exemple :

        Dim A, B As Date

        A =  New Date(2000, 1, 1)

        B = A.AddYears(1)
        MessageBox.Show(B.ToString("d"))

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
Salut,
tout dépend de la date départ.
du 31/12/2000 ou du 30/12/2000 ou
du 30/12/2000 ou du 25/15/200 ou ...
ce qui fait que tu dois faire une série de test avant
de qavoir :
-si tu ajoutes 1 mois après avoir ajouter un jour ou pas.
-si tu ajoutes un an après avoir ajouter un mois ou pas.

Remarques:A 10/12/2000 B 11/01/2001
c' est pas un an après mais 32 jours après !
<hr />
... Il y' en a même qui m' ont vu voler.
<hr />
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
oups !
25/15/200 ?!!!

<hr />
... Il y' en a même qui m' ont vu voler.
<hr />
Messages postés
127
Date d'inscription
mardi 10 mai 2005
Statut
Membre
Dernière intervention
2 août 2021

bonsoir,
Merci pour la remarque. Voila
Si A = 01/01/2000
B = 01/01/2001
Comment proceder pour que a chaque fois que 365.25jours passent B = 1an de plus
merci
Colby