|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2004 Messages : 48 ![]() |
Bonjour,
J'aimerai pouvoir calculer la différence entre 2 dates et pouvoir les afficher sous un format spécifique. exemple: datedebut: 01/01/2010 datefin : 3/02/2011 différence : 1 an 1mois 03 jours Merci. |
|
|
00
|
|
|
#2 | ||||
|
Membre éprouvé
![]() Robert LINCEConseiller psycho-pédagogique Inscription : octobre 2007 Messages : 281 ![]() |
Bonjour.
Une proposition qui retourne un résultat en années mois jours, tient compte des années bissextiles et qui me semble tenir la route dans tous les cas de figure (sauf erreur de ma part ). J'en ai testé plusieurs autres, et je n'en ai pas trouvé de plus simple qui retourne un résultat exact. Voici le code. Dans un module : D'abord la fonction (classique) pour tester si l'année est bissextile: Code :
Code :
Si vous l'essayez, ça serait gentil de me faire un retour. Cordialement. |
||||
|
|
00
|
|
|
#3 | ||
|
Membre habitué
![]() Conseil - Consultant en systèmes d'information Inscription : octobre 2008 Messages : 212 ![]() |
Bonjour ulovb,
Essaie cette fonction ... Code :
Je n'ai pas également géré les éventuelles anomalies (date de fin avant la date de début etc ...) Attention également, si les arguments d'entrée sont des variables "date" à entrer en format US si les arguments sont en format "string" les entrer en format français ... Bon courage ! Cordialement, |
||
|
|
00
|
|
|
#4 |
|
Membre éprouvé
![]() Robert LINCEConseiller psycho-pédagogique Inscription : octobre 2007 Messages : 281 ![]() |
Bonjour.
J'ai testé. Les résultats affichés sont pour le moins farfelus dans un cas sur deux.Premier problème : le nombre de jours retournés est simplement le nombre de jours de la date la plus récente. En plus, quand le nombre de mois de la date la plus ancienne est inférieur à l'autre, les mois sont affichés en négatif. Exemple : pour 20/05/2009 -02/07/1999 -> 10 an -2 mois 20 jours ![]() A mon avis, à retravailler, ou à éviter. Cordialement |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2004 Messages : 48 ![]() |
Merci à vous pour les codes proposés mais j'ai un souci, comment l'insérer à ma zone de texte (txtPériode) pour l'affichage.
|
|
|
00
|
|
|
#6 |
|
Membre éprouvé
![]() Robert LINCEConseiller psycho-pédagogique Inscription : octobre 2007 Messages : 281 ![]() |
Bonjour.
Propriétés du Form ou de l'état -> source contrôle de ton textbox "txtPériode" : =Ageamj([le_champ_source_date1]; [le_champ_source_date2]) Date1 est la date la plus ancienne. Cordialement. |
|
|
00
|
|
|
#7 | ||
|
Membre habitué
![]() Conseil - Consultant en systèmes d'information Inscription : octobre 2008 Messages : 212 ![]() |
Re,
J'ai du aller un peu trop vite ... Voilà une fonction qui devrait mieux fonctionner : Code :
@+ |
||
|
|
10
|
|
|
#8 |
|
Membre éprouvé
![]() Robert LINCEConseiller psycho-pédagogique Inscription : octobre 2007 Messages : 281 ![]() |
Bonjour Triton972.
Chouette! Le résultat retourné est effectivement maintenant toujours correct (en tout cas identique à celui retourné par ma fonction). Reste juste un petit souci avec ta fonction pour l'affichage du résultat pour les dates où les mois sont identiques et le jour date2<jour date1. Ex : 13/12/2007-17/12/1998=9ans-1mois26jours au lieu de 8ans11mois26jours. Cette discussion m'a en tout cas permis de vérifier, que ma fonction affiche bien un résultat correct, puisque, par des moyens différents, nous arrivons tous les deux aux mêmes valeurs. ![]() Cordialement. |
|
|
10
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2004 Messages : 48 ![]() |
Bonjour,
merci à Triton972 et à RobiPMS pour leur aide. Ce forum m'aide énormément.
|
|
|
00
|
|
|
#10 | ||
|
Membre habitué
![]() Conseil - Consultant en systèmes d'information Inscription : octobre 2008 Messages : 212 ![]() |
Bonjour ulovb et RobiPMS,
Content d'avoir participé à cette discussion. Moins content de n'avoir pas assez vérifié mon code . Voici le dernier (j'espère qu'il passera les tests de RobiPMS avec succès !Code :
|
||
|
|
00
|
|
|
#11 |
|
Membre éprouvé
![]() Robert LINCEConseiller psycho-pédagogique Inscription : octobre 2007 Messages : 281 ![]() |
Exact, Triton972. Je vais intégrer la gestion de ce cas particulier. Moi, je m'en sers pour afficher un âge lors d'un examen médical, donc en théorie ça n'arrive jamais et je n'ai pas pensé à le faire. Mais tu as raison, je vais le faire de la même façon que toi.
Cordialement. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com