这几乎是个大难题了,好像只能用代码来解决的,其实如果用Excel2010版就不需要这么麻烦,一个TEXT 函数就解决了:=TEXTNOW),"[$-130000]YYYY-M-D")
比如今天是2010年9月2日,用以下公式就可以得出农历七月二十四:
虽然在遇到闰月时,显示结果有点差强人意,中,2010年2月9日的农历应是十二月二十六,但因为那年有个闰五月,就无辜多出来一个月了。不过总比编代码要快捷多了吧,而且闰月也不是天天有。
假如把公式改成:=MID"甲乙丙丁戊己庚辛壬癸",MODTEXTA2,"[$-130000]e")-4,10)+1,1)&MID"子丑寅卯辰巳午未申酉戌亥",MODTEXTA2,"[$-130000]e")-4,12)+1,1)&"年"&TEXTA2,"[$-130000][DBNum1]m月")&TEXTA2,IF–TEXTA2,"[$-130000]d")=10,"初十",IF–TEXTA2,"[$-130000]d")>10,"[$-130000][DBNum1]d","初[$-130000][DBNum1]d"))),那就更像农历表示法了,不过因为农历每年开始日期都不一样,所以函数很难达到十分精确的结果,只能是将就着用。
那就更像农历的表示法了。