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

XL 2010 Date diff

hermann

XLDnaute Junior
Supporter XLD
Bonsoir
Svp, comment utiliser les ancienne date pour faire la soustraction?

31/12/1935 - 21/03/1882
ou
21/03/1882 - 31/12/1935

Merci
@r

NB: Pas de problème.
=DATEDIF(h3;h5;"y")&" Ann., "
&DATEDIF(h3;h5;"ym")&" Mo., "
&h5-DATE(ANNEE(h5);MOIS(h5);1)&" Jrs."

27 Ann., 7 Mo., 30 Jrs.
 

Modeste geedee

XLDnaute Barbatruc
augmenter chaque date de 700 ans ( soit 255675 jours)
methode basée sur le fait que les jours de la semaine se retrouvent aux mêmes dates au bout de 28 ans et notamment les dimanches,

700 est un multiple de 28 qui permet d'exploiter les dates depuis l'an 1200
decal=255675
=DATEDIF(h3+decal;h5+decal;"y")&" Ann., "
&DATEDIF(h3+decal;h5+decal;"ym")&" Mo., "
&DATEDIF(h3+decal;h5+decal;"md")&" Jrs."

Nb :
le découpage en années mois et jours d'une durée calendaire n'a aucune valeur mathématique,
les durées des mois et années n'étant pas des constantes
 

job75

XLDnaute Barbatruc
Bonjour hermann, Modeste geedee,

J'ai fabriqué cette fonction VBA :
VB:
Function NewDateDif(dat1 As Date, dat2 As Date) As String
Dim ans%, mois%, jours%
ans = Year(dat2) - Year(dat1) + (DateSerial(2000, Month(dat2), Day(dat2)) < DateSerial(2000, Month(dat1), Day(dat1)))
mois = Month(dat2) - Month(dat1) + (Day(dat2) < Day(dat1))
If mois < 0 Then mois = mois + 12
jours = dat2 - DateSerial(Year(dat2), Month(dat2), Day(dat1))
If jours < 0 Then jours = dat2 - DateSerial(Year(dat2), Month(dat2) - 1, Day(dat1))
NewDateDif = IIf(ans, ans & " an" & IIf(ans > 1, "s", ""), "") & " " & _
    IIf(mois, mois & " mois", "") & " " & IIf(jours, jours & " jour" & IIf(jours > 1, "s", ""), "")
NewDateDif = Application.Trim(NewDateDif) 'SUPPRESPACE
End Function
Elle vaut ce qu'elle vaut, voyez le fichier joint car je n'ai pas vraiment testé.

A+
 

Pièces jointes

  • NewDateDif(1).xlsm
    20.8 KB · Affichages: 5

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Bonsoir
Svp, comment utiliser les ancienne date pour faire la soustraction?

31/12/1935 - 21/03/1882
ou
21/03/1882 - 31/12/1935

voir aussi :

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