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

XL 2010 Date diff

  • Initiateur de la discussion Initiateur de la discussion hermann
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

hermann

XLDnaute Occasionnel
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.
 
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
 
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

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 :

 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
823
Réponses
6
Affichages
793
Réponses
0
Affichages
1 K
Réponses
9
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…