-----Message d'origine-----
Salut Modeste,
Pour compléter, une explication de la 1ère formule par
son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of
the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel
terms and should work
with a french excel ( excel 95 and above ) for the years
from 1900 to 2078.
The other formula also works, if you have an english
excel.
The formulas were the result of an international contest
for the shortest german
easter sunday formula. The contest was intiated by the
german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas
are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078,
which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would
translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I
published the latter
formula.
Note: for american date formats they do not work; day and
month have to be
changed in order to work properly!
The first term is always a function that rounds or
truncates to integer. In
german excel the DM-function is the shortest way, FLOOR
would translate to
UNTERGRENZE. There is no way to compute an integer
division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the
currency formula is
similar:
Easter Sunday is defined to be the first sunday after the
first full moon in
spring.
Let 'b' be the number of days after the start of spring
on 21st of march, then
the date of the first full moon evaluates from te
(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer (
with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-
field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter
sunday =
(date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not
supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of
them is the Carter
formula, which gives correct results in the mentioned
range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)
=
mod(19*19*(mod(y/19,1)-6,30)
=
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)
=
mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case
differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b% where it should be 26; this
doesn't matter in the
given range of years 1900 - 2078 ; but does not work for
2079 !)
After replacing the modulo 30 calculation by the minute-
function, which computes
modulo 60, you get the final result in literal date form
as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more
lengthy, because the
day-function the way it is used only gives correct
results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la
seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la
plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
)+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)))*7-6
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-
693881)/7)-SI
(OU(A150+{4;31;99;126});7)-6
TE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
TE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
TE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A154;A181;A1 49;A1 76);7)
=TRONQUE(365,25*A1-693894)+SI(OU
(A154;A181;A1 49;A1 76);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD
(A1;19);30)
+1;7)
TE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)
+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-
(MOD
(24-11*MOD(A1;19);30)>27)-3)
TE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD
(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
TE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD
(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
.
-----Message d'origine-----
Salut Modeste,
Pour compléter, une explication de la 1ère formule par
son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of
the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel
terms and should work
with a french excel ( excel 95 and above ) for the years
from 1900 to 2078.
The other formula also works, if you have an english
excel.
The formulas were the result of an international contest
for the shortest german
easter sunday formula. The contest was intiated by the
german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas
are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078,
which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would
translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I
published the latter
formula.
Note: for american date formats they do not work; day and
month have to be
changed in order to work properly!
The first term is always a function that rounds or
truncates to integer. In
german excel the DM-function is the shortest way, FLOOR
would translate to
UNTERGRENZE. There is no way to compute an integer
division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the
currency formula is
similar:
Easter Sunday is defined to be the first sunday after the
first full moon in
spring.
Let 'b' be the number of days after the start of spring
on 21st of march, then
the date of the first full moon evaluates from =date
(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer (
with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-
field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter
sunday =
(date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not
supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of
them is the Carter
formula, which gives correct results in the mentioned
range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)
=
mod(19*19*(mod(y/19,1)-6,30)
=
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)
=
mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case
differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b=25 where it should be 26; this
doesn't matter in the
given range of years 1900 - 2078 ; but does not work for
2079 !)
After replacing the modulo 30 calculation by the minute-
function, which computes
modulo 60, you get the final result in literal date form
as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more
lengthy, because the
day-function the way it is used only gives correct
results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la
seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :
ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la
plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
junohett@t-online.de
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
Jansen.Thomas@t-online.de
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
rfr@gmx.net
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
Christoph.Kremer@gmx.net
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
Heiner.Lichtenberg@bmf.bund.de
=29+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
t.claussen@fh-westkueste.de
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
Gustave@gmx.net
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)=81))*7-6
longre@wanadoo.fr
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
r.wieland@gmx.de
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
BBaumbach@dual-zentrum.de
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-
693881)/7)-SI
(OU(A1=1950+{4;31;99;126});7)-6
f_riesel@styria.com
=DATE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
Stephen@BMSLtd.co.uk
=DATE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
gerhard.somitsch@datasystems.at
=DATE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A1=1954;A1=1981;A1=2049;A1=2076);7)
Norbert_Heintze@t-online.de
=TRONQUE(365,25*A1-693894)+SI(OU
(A1=1954;A1=1981;A1=2049;A1=2076);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD
(A1;19);30)
+1;7)
tjacob@haso.de
=DATE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)
+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-
(MOD
(24-11*MOD(A1;19);30)>27)-3)
dwagner@bMAN.ch
=DATE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD
(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
cpearson@gvi.net
=DATE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD
(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
GeorgeSim@email.msn.com
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
.
-----Message d'origine-----
Salut Modeste,
Pour compléter, une explication de la 1ère formule par
son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of
the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel
terms and should work
with a french excel ( excel 95 and above ) for the years
from 1900 to 2078.
The other formula also works, if you have an english
excel.
The formulas were the result of an international contest
for the shortest german
easter sunday formula. The contest was intiated by the
german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas
are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078,
which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would
translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I
published the latter
formula.
Note: for american date formats they do not work; day and
month have to be
changed in order to work properly!
The first term is always a function that rounds or
truncates to integer. In
german excel the DM-function is the shortest way, FLOOR
would translate to
UNTERGRENZE. There is no way to compute an integer
division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the
currency formula is
similar:
Easter Sunday is defined to be the first sunday after the
first full moon in
spring.
Let 'b' be the number of days after the start of spring
on 21st of march, then
the date of the first full moon evaluates from te
(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer (
with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-
field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter
sunday =
(date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not
supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of
them is the Carter
formula, which gives correct results in the mentioned
range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)
=
mod(19*19*(mod(y/19,1)-6,30)
=
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)
=
mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case
differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b% where it should be 26; this
doesn't matter in the
given range of years 1900 - 2078 ; but does not work for
2079 !)
After replacing the modulo 30 calculation by the minute-
function, which computes
modulo 60, you get the final result in literal date form
as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more
lengthy, because the
day-function the way it is used only gives correct
results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la
seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la
plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
)+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)))*7-6
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-
693881)/7)-SI
(OU(A150+{4;31;99;126});7)-6
TE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
TE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
TE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A154;A181;A1 49;A1 76);7)
=TRONQUE(365,25*A1-693894)+SI(OU
(A154;A181;A1 49;A1 76);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD
(A1;19);30)
+1;7)
TE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)
+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-
(MOD
(24-11*MOD(A1;19);30)>27)-3)
TE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD
(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
TE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD
(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
.
ne demande SURTOUT pas comment on arrive à ce résultat
:-)
ne demande SURTOUT pas comment on arrive à ce résultat
:-)
ne demande SURTOUT pas comment on arrive à ce résultat
:-)
;-)))
c'est en effet chez www.herber.de que j'ai récupéré cette
compilation que j'ai religieusement gardé dessous mon
coude.
mais comme je ne pratique en aucune façon la langue de
Goethe ???,
j'ai bien eu quelques difficultes en en comprendre toutes
les subtilités.
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
;-)))
c'est en effet chez www.herber.de que j'ai récupéré cette
compilation que j'ai religieusement gardé dessous mon
coude.
mais comme je ne pratique en aucune façon la langue de
Goethe ???,
j'ai bien eu quelques difficultes en en comprendre toutes
les subtilités.
notament cette curieuse formule
de "prasadv@md2.vsnl.net.in" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
;-)))
c'est en effet chez www.herber.de que j'ai récupéré cette
compilation que j'ai religieusement gardé dessous mon
coude.
mais comme je ne pratique en aucune façon la langue de
Goethe ???,
j'ai bien eu quelques difficultes en en comprendre toutes
les subtilités.
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
notament cette curieuse formule
de "prasadv@md2.vsnl.net.in" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
Salut Modeste,
Pour compléter, une explication de la 1ère formule par son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel terms and should work
with a french excel ( excel 95 and above ) for the years from 1900 to 2078.
The other formula also works, if you have an english excel.
The formulas were the result of an international contest for the shortest german
easter sunday formula. The contest was intiated by the german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078, which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I published the latter
formula.
Note: for american date formats they do not work; day and month have to be
changed in order to work properly!
The first term is always a function that rounds or truncates to integer. In
german excel the DM-function is the shortest way, FLOOR would translate to
UNTERGRENZE. There is no way to compute an integer division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the currency formula is
similar:
Easter Sunday is defined to be the first sunday after the first full moon in
spring.
Let 'b' be the number of days after the start of spring on 21st of march, then
the date of the first full moon evaluates from Úte(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer ( with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter sunday > (date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of them is the Carter
formula, which gives correct results in the mentioned range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)mod(19*19*(mod(y/19,1)-6,30)
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b% where it should be 26; this doesn't matter in the
given range of years 1900 - 2078 ; but does not work for 2079 !)
After replacing the modulo 30 calculation by the minute-function, which computes
modulo 60, you get the final result in literal date form as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more lengthy, because the
day-function the way it is used only gives correct results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
)+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)))*7-6
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-693881)/7)-SI
(OU(A150+{4;31;99;126});7)-6
ÚTE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
ÚTE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
ÚTE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A154;A181;A1 49;A1 76);7)
=TRONQUE(365,25*A1-693894)+SI(OU
(A154;A181;A1 49;A1 76);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD(A1;19);30)
+1;7)
ÚTE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-(MOD
(24-11*MOD(A1;19);30)>27)-3)
ÚTE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
ÚTE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
Salut Modeste,
Pour compléter, une explication de la 1ère formule par son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel terms and should work
with a french excel ( excel 95 and above ) for the years from 1900 to 2078.
The other formula also works, if you have an english excel.
The formulas were the result of an international contest for the shortest german
easter sunday formula. The contest was intiated by the german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078, which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I published the latter
formula.
Note: for american date formats they do not work; day and month have to be
changed in order to work properly!
The first term is always a function that rounds or truncates to integer. In
german excel the DM-function is the shortest way, FLOOR would translate to
UNTERGRENZE. There is no way to compute an integer division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the currency formula is
similar:
Easter Sunday is defined to be the first sunday after the first full moon in
spring.
Let 'b' be the number of days after the start of spring on 21st of march, then
the date of the first full moon evaluates from Úte(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer ( with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter sunday > (date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of them is the Carter
formula, which gives correct results in the mentioned range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)
mod(19*19*(mod(y/19,1)-6,30)
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)
mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b% where it should be 26; this doesn't matter in the
given range of years 1900 - 2078 ; but does not work for 2079 !)
After replacing the modulo 30 calculation by the minute-function, which computes
modulo 60, you get the final result in literal date form as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more lengthy, because the
day-function the way it is used only gives correct results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :
ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
junohett@t-online.de
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
Jansen.Thomas@t-online.de
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
rfr@gmx.net
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
Christoph.Kremer@gmx.net
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
Heiner.Lichtenberg@bmf.bund.de
)+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
t.claussen@fh-westkueste.de
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
Gustave@gmx.net
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)))*7-6
longre@wanadoo.fr
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
r.wieland@gmx.de
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
BBaumbach@dual-zentrum.de
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-693881)/7)-SI
(OU(A150+{4;31;99;126});7)-6
f_riesel@styria.com
ÚTE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
Stephen@BMSLtd.co.uk
ÚTE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
gerhard.somitsch@datasystems.at
ÚTE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A154;A181;A1 49;A1 76);7)
Norbert_Heintze@t-online.de
=TRONQUE(365,25*A1-693894)+SI(OU
(A154;A181;A1 49;A1 76);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD(A1;19);30)
+1;7)
tjacob@haso.de
ÚTE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-(MOD
(24-11*MOD(A1;19);30)>27)-3)
dwagner@bMAN.ch
ÚTE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
cpearson@gvi.net
ÚTE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
GeorgeSim@email.msn.com
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
Salut Modeste,
Pour compléter, une explication de la 1ère formule par son auteur, Norbert
Hetterich:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. My exact formula was the german version of the 'currency' type:
=DM((TAG(MINUTE(A1/38)/2+55)&".4."&A1)/7;)*7-6
Your 'franc'-formula is the translation into french excel terms and should work
with a french excel ( excel 95 and above ) for the years from 1900 to 2078.
The other formula also works, if you have an english excel.
The formulas were the result of an international contest for the shortest german
easter sunday formula. The contest was intiated by the german excel expert Hans
W. Herber ( see www.herber.de ). The first 20 formulas are enclosed in
eformula.zip .
The formulas should work for the years 1900 to 2078, which is the range of years
that Excel 95 can handle.
One could also give an english formula. My formula would translate to
=DOLLAR((DAY(MINUTE(A1/38)/2+55)&".4."&A1)/7,)*7-6
But this is 5 characters longer than the also working
=FLOOR(DAY(MINUTE(A1/38)/2+56)&"/5/"&A1,7)-34 and so I published the latter
formula.
Note: for american date formats they do not work; day and month have to be
changed in order to work properly!
The first term is always a function that rounds or truncates to integer. In
german excel the DM-function is the shortest way, FLOOR would translate to
UNTERGRENZE. There is no way to compute an integer division like in Visual Basic
with the backslash; a function has to be used.
2. Explanation of the formulas
Here I will describe the FLOOR formula, the way to the currency formula is
similar:
Easter Sunday is defined to be the first sunday after the first full moon in
spring.
Let 'b' be the number of days after the start of spring on 21st of march, then
the date of the first full moon evaluates from Úte(y,3,21+b) or as a literal
=(21+b)&"/3/"&y or =(b-10)&"/4/"&y with Y = year.
A date in excel is internally represented by an integer ( with 1/1/1900 = 1 ).
So an integer division by 7 after adding 6 to the day-field yields the weeks
since 1.jan 1900.
After multiplying with 7 and adding 1 you have the easter sunday > (date(y,3,21+b+6)7) * 7 + 1 or [backslash int div not supported in functions]
= floor(date(y,3,27+b),7) + 1 or
= floor(date(y,4,b-4),7) + 1 or
= floor(date(y,4,b+31),7) - 34 or
= floor(date(y,5,b+1),7) - 34 or as literal
= floor((b+1)&"/5/"&Y,7) - 34
equivalent is
= dollar((b&"/4/"&Y)/7) * 7 - 6
There are several methods for calculating 'b'. One of them is the Carter
formula, which gives correct results in the mentioned range:
b = mod(19*mod(y,19)-6,30)
if b 27 : b = b - 1
After some modulo arithmetics you receive for 'b'
mod(19*(mod(y,19)-6,30)mod(19*19*(mod(y/19,1)-6,30)
mod(361*(mod(y/19,1)-6,30)
~
mod(360*(mod(y/19,1)-6,30)mod(360*y/19-6,30)
~
day(mod(360*y/19,30)+55)
and for 'b+1'
day(mod(360*y/19,30)+56)
The day function is used to handle the case differentiation for b 27.
It would be to lengthy to do it with the if-function.
(The formula calculates b% where it should be 26; this doesn't matter in the
given range of years 1900 - 2078 ; but does not work for 2079 !)
After replacing the modulo 30 calculation by the minute-function, which computes
modulo 60, you get the final result in literal date form as
=floor(day(minute(y/38)/2+56)&"/5/"&y,7)-34
The other floor-functions mentioned above would be more lengthy, because the
day-function the way it is used only gives correct results if the additive term
is 55 or 56. An example is
=floor((day(minute(y/38)/2+55)-4)&"/4/"&y,7)+1 or
=floor(date(y,4,day(minute(y/38)/2+55)-4),7)+1
which in both cases has three characters more.
Norbert Hetterich
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Amicalement,
Croquignol
Bonjour Charles,
;-)))
oui hélas et faute d'avoir vérifié, ce n'est pas la seule
erreur....
1986,1989,1997,2005,2008,2016,2024,2027,2035,2043,2046,2054
2062,2065,2073
J'avais surtout proposé cette formule pour son aspect
curieux et toutefois précisé :ne demande SURTOUT pas comment on arrive à ce résultat
:-)
pour etre exhaustif a ce sujet et coherents sur la plage
1979/2078 :
=PLANCHER(JOUR(MINUTE(A1/38)/2+56)&"/5/"&A1;7)-34
la formule la plus courte 49 caractères !!!!
=FRANC(("4/"&A1)/7+MOD(19*MOD(A1;19)-7;30)*14%;)*7-6
=PLANCHER(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29));7)+29
=TRONQUE(DATE(A1;3;MOD(349*MOD(A1/19;1)-6;29))/7)*7+29
=7*TRONQUE(DATE(A1;3;MOD(18,37*MOD(A1;19)-6;29))/7)+29
)+7*TRONQUE(DATE(A1;3;MOD(19*MOD(A1;19)-6;30)*96%)/7)
=TRONQUE(DATE(A1;4;MOD(19*MOD(A1;19)-6;30)*96%-3)/7)*7+1
=ENT(PLANCHER("3/5/"&A1;29,5311)/7-(MOD(A1;95)))*7-6
=PLAFOND(("17/4/"&A1)-TRONQUE(MOD(11*MOD(A1;19)+5;30)-
1,5);7)+1
=PLAFOND(DATE(A1;4;20)-MOD(6+11*MOD(A1;19);30)-(MOD
(6+11*MOD(A1;19);30)<3);7)+1
=7*TRONQUE((MOD(MOD(A1;19)*19-6;30)+365,25*A1-693881)/7)-SI
(OU(A150+{4;31;99;126});7)-6
ÚTE(A1;3;28)+MOD(24-MOD(A1;19)*10,63;29)-MOD(TRONQUE
(A1*5/4)+MOD(24-MOD(A1;19)*10,63;29)+1;7)
ÚTE(A1;3;29,56+0,979*MOD(204-11*MOD(A1;19);30)-JOURSEM
(DATE(A1;3;28,56+0,979*MOD(204-11*MOD(A1;19);30))))
ÚTE(A1;3;28+MOD(204-11*MOD(A1;19);30))-MOD(DATE
(A1;3;6+MOD(204-11*MOD(A1;19);30));7)-SI(OU
(A154;A181;A1 49;A1 76);7)
=TRONQUE(365,25*A1-693894)+SI(OU
(A154;A181;A1 49;A1 76);;7)+MOD(24-11*MOD
(A1;19);30)-MOD(A1+TRONQUE(A1/4)+MOD(24-11*MOD(A1;19);30)
+1;7)
ÚTE(A1;4;MOD(24-11*MOD(A1;19);30)-MOD(1+ENT(A1*5/4)+MOD
(24-11*MOD(A1;19);30)-(MOD(24-11*MOD(A1;19);30)>27);7)-(MOD
(24-11*MOD(A1;19);30)>27)-3)
ÚTE(A1;3;28)+MOD(24-11*MOD(A1;19);30)-(MOD(24-11*MOD
(A1;19);30)>27)-MOD(ENT(5*A1/4)+1+MOD(24-11*MOD(A1;19);30)-
(MOD(24-11*MOD(A1;19);30)>27);7)
ÚTE(A1;3;28)+MOD(24+19*MOD(A1;19);30)-(MOD(24+19*MOD
(A1;19);30)>27)-MOD(ENT(A1+A1/4)+MOD(24+19*MOD(A1;19);30)-
(MOD(24+19*MOD(A1;19);30)>27)+1;7)
toutes ces formules sont disponibles sur Excelabo.net
fichier gd-feries.zip ?
@+
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
OK, vu. La formule correcte est :
=TRONQUE(DATE(A12;7;-CODE(STXT("NYdQJT_LWbOZeR]KU`";MOD(A12;19)+1;1)))/7)*7
Il faut remplacer les majuscules en positions 3, 11 et 14 de la chaîne par
des
minuscules (D, B et E par d, b et e). Sans doute une petite erreur de
manip de
H. Herber quand il avait construit son classeur eformula.
Amicalement,
Croq
notament cette curieuse formule
de "prasadv@md2.vsnl.net.in" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
OK, vu. La formule correcte est :
=TRONQUE(DATE(A12;7;-CODE(STXT("NYdQJT_LWbOZeR]KU`";MOD(A12;19)+1;1)))/7)*7
Il faut remplacer les majuscules en positions 3, 11 et 14 de la chaîne par
des
minuscules (D, B et E par d, b et e). Sans doute une petite erreur de
manip de
H. Herber quand il avait construit son classeur eformula.
Amicalement,
Croq
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
OK, vu. La formule correcte est :
=TRONQUE(DATE(A12;7;-CODE(STXT("NYdQJT_LWbOZeR]KU`";MOD(A12;19)+1;1)))/7)*7
Il faut remplacer les majuscules en positions 3, 11 et 14 de la chaîne par
des
minuscules (D, B et E par d, b et e). Sans doute une petite erreur de
manip de
H. Herber quand il avait construit son classeur eformula.
Amicalement,
Croq
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
notament cette curieuse formule
de "prasadv@md2.vsnl.net.in" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
notament cette curieuse formule
de "" dans laquelle je subodore un
probleme de calcul d'epacte ????
c'est me semble-t-il la seule qui fournisse des résultats
erronés
Les formules fournissent TOUTES des résultats erronés à un moment donné ou un
autre puisque l'algo de calcul de Pâques nécessiterait une très longue formule
pour être calculé exactement.
Les formules fournissent TOUTES des résultats erronés à un moment donné ou un
autre puisque l'algo de calcul de Pâques nécessiterait une très longue formule
pour être calculé exactement.
Les formules fournissent TOUTES des résultats erronés à un moment donné ou un
autre puisque l'algo de calcul de Pâques nécessiterait une très longue formule
pour être calculé exactement.