Une approche purement VBA : Function IsBissextile(An, Optional JulToGreg = 1582) 'plage de validité des dates en VBA If An < 100 Or An > 9999 Then IsBissextile = CVErr(xlErrNum) Exit Function End If 'calendrier julien If An < JulToGreg Then IsBissextile = (An Mod 4 = 0) Else 'calendrier grégorien IsBissextile = (An Mod 400 = 0) Or _ (An Mod 4 = 0 And (Not An Mod 100 = 0)) End If End Function 'fs '====================== >
je ne sais si l'on peut parler d'année bissextile avant 1582 ???
une approche purement formuliste :o))) si A1 contient une date =OU(MOD(ANNEE(A1);400)=0;ET(MOD(ANNEE(A1);4)=0;MOD(ANNEE(A1);100)<>0)) si A1 contient une année sur 4 chiffres =OU(MOD(A1;400)=0;ET(MOD(A1;4)=0;MOD(A1;100)<>0))
il faudrait toutefois cher maître du temps que vous régliez votre horloge ;o))) car > "Frédéric Sigonneau" > Date: Mon, 24 Aug 2009 16:58:26 +0200 > User-Agent: Thunderbird 2.0.0.16 (Windows/20080708) > Subject: Re: Connaitre le pourcentage de jour qu'il me reste dans un an
on en a encore pour un an à voir ce fil en tete de MPFE !!!! ;o)))
> je ne sais si l'on peut parler d'année bissextile avant 1582 ???
Si si, c'est même sur la "gestion" de ces années bissextiles qu'a porté
l'essentiel de la réforme grégorienne. Cf
http://fr.wikipedia.org/wiki/Année_bissextile
Et désolé pour mon horloge :(
J'avais justement besoin de faire un essai avec une année non bissextile..
Une approche purement VBA :
Function IsBissextile(An, Optional JulToGreg = 1582)
'plage de validité des dates en VBA
If An < 100 Or An > 9999 Then
IsBissextile = CVErr(xlErrNum)
Exit Function
End If
'calendrier julien
If An < JulToGreg Then
IsBissextile = (An Mod 4 = 0)
Else
'calendrier grégorien
IsBissextile = (An Mod 400 = 0) Or _
(An Mod 4 = 0 And (Not An Mod 100 = 0))
End If
End Function 'fs
'====================== >
je ne sais si l'on peut parler d'année bissextile avant 1582 ???
une approche purement formuliste :o)))
si A1 contient une date
=OU(MOD(ANNEE(A1);400)=0;ET(MOD(ANNEE(A1);4)=0;MOD(ANNEE(A1);100)<>0))
si A1 contient une année sur 4 chiffres
=OU(MOD(A1;400)=0;ET(MOD(A1;4)=0;MOD(A1;100)<>0))
il faudrait toutefois cher maître du temps que vous régliez votre horloge ;o)))
car
> "Frédéric Sigonneau" nospam@nospam
> Date: Mon, 24 Aug 2009 16:58:26 +0200
> User-Agent: Thunderbird 2.0.0.16 (Windows/20080708)
> Subject: Re: Connaitre le pourcentage de jour qu'il me reste dans un an
on en a encore pour un an à voir ce fil en tete de MPFE !!!!
;o)))
Une approche purement VBA : Function IsBissextile(An, Optional JulToGreg = 1582) 'plage de validité des dates en VBA If An < 100 Or An > 9999 Then IsBissextile = CVErr(xlErrNum) Exit Function End If 'calendrier julien If An < JulToGreg Then IsBissextile = (An Mod 4 = 0) Else 'calendrier grégorien IsBissextile = (An Mod 400 = 0) Or _ (An Mod 4 = 0 And (Not An Mod 100 = 0)) End If End Function 'fs '====================== >
je ne sais si l'on peut parler d'année bissextile avant 1582 ???
une approche purement formuliste :o))) si A1 contient une date =OU(MOD(ANNEE(A1);400)=0;ET(MOD(ANNEE(A1);4)=0;MOD(ANNEE(A1);100)<>0)) si A1 contient une année sur 4 chiffres =OU(MOD(A1;400)=0;ET(MOD(A1;4)=0;MOD(A1;100)<>0))
il faudrait toutefois cher maître du temps que vous régliez votre horloge ;o))) car > "Frédéric Sigonneau" > Date: Mon, 24 Aug 2009 16:58:26 +0200 > User-Agent: Thunderbird 2.0.0.16 (Windows/20080708) > Subject: Re: Connaitre le pourcentage de jour qu'il me reste dans un an
on en a encore pour un an à voir ce fil en tete de MPFE !!!! ;o)))