给你个参考网址:http://www.cnblogs.com/zhaoshun/archive/2008/12/24/1361623.html
其实我也不懂这个算法,网上粘贴的,我觉得可以不去深究这个公式,反正有现成代码:
设:公元年数-1977(或1901)=4Q+R
则:阴历日期=14Q+10.6(R+1)+年内日期序数-29.5n
(注:式中Q、R、n均为自然数,R<4)
例:1994年5月7日的阴历日期为:
1994-1977=17=4×4+1
故:Q=4,R=1 则:5月7日的阴历日期为:
14×4+10.6(1+1)+(31+28+31+30+7)-29.5n
=204.2- 29.5n
然后用29.5去除204.2得商数6......27.2,6即是n值,余数27即是阴历二十七日。
公历转农历,如图例:
B2="农历"&TEXT(A2,"[$-130000]m月d日")----限2007版以上
农历闰月月份会加 1,如润7月会显示8月,8月顺延为9月….,12月顺延为13月。
农历转公历:(供参考,不一定正确,闰年无法转换)
B2=LOOKUP(--SUBSTITUTE(SUBSTITUTE(A2,-30,-28),-29,-27),--TEXT((LEFT(A2,5)&"1/1")+ROW($1:$400),"[$-130000]yyyy/m/d"),(LEFT(A2,5)&"1/1")+ROW($1:$400))+(--RIGHT(A2,2)>28)*2
验算:C2="农历"&TEXT(B2,"[$-130000]m月d日")