十二生肖>十二星座>运程

excel农历日期自动生成 excel农历快速转换阳历日期

分类:运程发布者:上官喜爱

一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于excel农历日期自动生成 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 农历转阳历

比如数据在a1

在b1输入

=LOOKUP(LEFT(A1,FIND("月",A1,1)-1),{"八","二","九","六","七","三","十","十二","十一","四","五","一"},{8,2,9,6,7,3,10,12,11,4,5,1})&"."&LOOKUP(MID(A1,FIND("月",A1,1)+1,3),{"初八","初二","初九","初六","初七","初三","初十","初四","初五","初一","二十","二十八","二十二","二十九","二十六","二十七","二十三","二十四","二十五","二十一","三十","十八","十二","十九","十六","十七","十三","十四","十五","十一"},{"08","02","09","06","07","03"汪铅友,"10","04","05","01","20","激清28","22","29","26","27","23","24","25","21","30","18","12"困槐,"19","16","17","13","14","15","11"})

选中向下拖就ok

以上内容是小编精心整理的关于excel农历日期自动生成 excel农历快速转换阳历日期的精彩内容,好的文章需要你的分享,喜欢excel农历日期自动生成 excel农历快速转换阳历日期这篇精彩文章的,请您经常光顾吧!

上一篇:农历九月十一是什么星座 农历九月十一阳历是多少

下一篇:更多运程

运程相关文章
更多运程文章

精选运程

运程热点