excel提取农历 获取农历日期
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于excel提取农历 获取农历日期的文章,本文对文章excel提取农历 获取农历日期好好的分析和解答,希望你能喜欢,只有你喜欢的内容存在,只有你来光临,我们才能继续前行。

Excel如何显示农历日期和农历月份?
结合前人经验,站在巨人肩膀上做出来的版本。主要改善的有如下2点,其次对于公式都做了注解。
1. 农历每个月初一显示为相应的月份,比如六月初一,则显示为六月,符合一般日历上显示农历的习惯。
2. 农历十号、二十号、及三十号分别显示为初十、二十、三十,二十一至二十九仍显示为廿一、廿二等,三十一也是卅一,修改了其他回答中“初一日”,“十五日”这样的显示方式,更符合习惯。
=IF(TEXT(A1,"[$-]d")="1",
* 如果A1格农历日期为1号,则通过下述判断显示为农历月份。"[$-]”是用于换算农历,后缀d表示换算出农历日期,下一行中的后缀m则是表示农历月份。
IF(TEXT(A1," [$-]m")*1-1=12,"腊",
* 农历十二月显示为腊月,其中[$-]m")*1减去1是因为2023年为农历闰4月,不减去1的话,当年农历12月会显示为十三月。
IF(TEXT(A1," [$-]m")*1=1," 正",
* 农历一月显示为正月,此处不减一,因为农历一月尚不涉及闰月。
IF(TEXT(A1," [$-]m")*1-1=10,"十",
IF(TEXT(A1," [$-]m")*1-1=11,"十一",
* 阿拉伯数字10及11转汉字会显示为“一十”和“一十一”这里10月和11月特别处理。
TEXT(TEXT(A1," [$-]m")-1,"[DBNum1]"
* 我是2023年8月开始做的日历,所以在解决闰四月这个问题的时候,采取了简单粗暴的办法,就是除了上述正月以外的月份统统都减去1来计算,而没有考虑2、3、4(闰)月份的问题。实际使用中,针对不同年份的农历闰月问题,可以在闰月前采用不减一的公式,即手工去掉上面所有的“-1”,而自闰月后采用减一的公式。因为Excel无法计算农历闰月,所以只能这样曲线救国了。
)))))
&"月",
* 到这里为止,解决了农历初一显示为月份的问题。从第二行开始,也可以单独用于农历月份。
下面开始是解决农历初一以外的日期问题,同时为了解决上面列的第二点改善,也做了简单粗暴的设计。
IF(TEXT(A1,"[$-]d")-9<1,"初"&TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d"),
* 初一在之前的if里已经处理过了,所以这里简单的用日期-9<1就可以解决初二到初九的问题了。
IF(TEXT(A1,"[$-]d")="10","初十",
* 在上面没有才用日期-9≤1把初十解决掉,是因为在实践中发现那样子初十会显示为“初〇”,问题根源疑似是由TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d")这段语句造成的。这里我又采取了简单粗暴的办法,就是另起一行,把初十单独拉出来做。
IF(TEXT(A1,"[$-]d")-19<1,"十"&TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d"),
* 这里是解决十一到十九之间的问题,就直接显示十一到十九,逻辑为“十”加上个位的一到九,其中个位的一到九就是通过上述这段语句TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d") 解决的
IF(TEXT(A1,"[$-]d")="20","二十",
* 这里是单独解决二十,理由同上面初十
IF(TEXT(A1,"[$-]d")-29<1,"廿"&TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d"),
* 这里是解决廿一到廿九,逻辑同十一到十九,下面三十和卅一逻辑基本同上。做完之后才发现阴历似乎并没有三十一号。。。。然而也懒得再去验证和修改了。
IF(TEXT(A1,"[$-]d")="30","三十",
IF(TEXT(A1,"[$-]d")-39<1,"卅"&TEXT(RIGHT(TEXT(A1," [$-]d"),1)*1,"[DBNum1]d"),
""))))))))
excel中有没简便方法知道阳历日期算出阴历日期
excel公历转农历方法一:使用text函数
A列是公历日期,我们在B1单元格输入公式:=TEXT(A1,"[$-]yyyy年m月"&IF(LEN(--TEXT(A1,"[$-]dd"))=1,"初","")&"d"),下拉完成公历转农历。
excel公历转农历方法二:使用text+MID函数
A列仍然是公历,B1输入公式:=MID("甲乙丙丁戊己庚辛壬癸",MOD(TEXT(A1,"[$-]e")-4,10)+1,1)&MID("子丑寅卯辰巳午未申酉戌亥",MOD(TEXT(A1,"[$-]e")-4,12)+1,1)&"年"&TEXT(A1,"[$-][DBNum1]m月d日"即可。
excel公历转农历方法三:使用text+MID+CHOOSE+YEAR函数
A1为公历,B1输入:=CHOOSE(MOD(YEAR(A1)-1900,10)+1,"庚","辛","壬","癸","甲","乙","丙","丁","戊","己")&CHOOSE(MOD(YEAR(A1)-1900,12)+1,"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥")&TEXT(A1,"[dbnum1][$-]年m月"&IF(--TEXT(A1,"[$-]d")<11,"初","")&TEXT(A1,"[dbnum1][$-]d"))
使用函数在Excel2023中将公历日期转换为农历
①启动Excel2023,在任意一个单元格输入下列函数:“=TEXT(NOW(),"[$-]YYYY-M-D")”。
③如果想要完全以农历形式显示出来,那么可以输入下列公式:=MID(" 甲乙丙丁戊己庚辛壬癸",MOD(TEXT(NOW(),"[$-]e")-4,10)+1,1)MID("子丑寅卯辰巳午未申酉 戌亥",MOD(TEXT(NOW(),"[$-]e")-4,12)+1,1)"年"TEXT(NOW()," [$-][DBNum1]m月d日")
④对于公式各个参数的说明,大家如有疑问可以留言,我会跟大家解答。
以上内容是小编精心整理的关于excel提取农历 获取农历日期的精彩内容,好的文章需要你的分享,喜欢excel提取农历 获取农历日期这篇精彩文章的,请您经常光顾吧!
上一篇:19880228农历是什么星座 19880228农历怎么样
下一篇:更多农历