为什么我用WPS公历转农历公式,转换过来还是公历

wps表格为什么不能公历转换农历格式,输入函数公历农历日期一样?

WPS是不能用这个函数,office是可以的,算是WPS的一个限制吧,我以前也需要一个这样的,自己就做了一个数据源,方法是:把年份在OFFICE里转化一下,然后复制到WPS中(粘贴数值)就可以了,然后用VL XL函数匹配就行了 如果需要可以找我拿,当然自己做是最方便的。

wps用公式公历转换成农历结果一样

wps用公式公历转换成农历结果不一样。根据查询相关信息,wps用公式公历转换成农历的结果是有相差的。公历又叫阳历,是太阳历,是以地球绕太阳公转的运动周期为基础而制定的历法。农历,中国传统历法,是阴阳历,以月相变化周期朔望月作为历月的基础,又根据太阳回归年周期来计算一年的时间。

表格阳历转阴历输入转换公式怎么转换不了

第1步、电脑打开Excel表格,列好日期。
第2步、然后在阴历中输入公式=TEXT(A2,"[$-130000]yyyy-m-d")。
第3步、输入公式后,按回车键就可以把阳历转换为阴历了。
4、下拉复制公式就可以了。
如今世界通行的公历就是一种阳历(太阳历),是以地球绕太阳公转的运动周期为基础而制定的历法,阴历在天文学中主要指按月亮的月相周期来安排的历法,即以朔望月作为确定历月的基础。虽然现在趋于使用阳历,但我国仍有许多节日使用阴历,有时用EXCEL设置表格时,会用到阴历,但EXCEL中并没有专门的函数来进行阴阳历转换,可以使用公式来进行辅助转换。

WPS表格怎么将公历转化成农历日期?

excel公历转农历方法一:使用text函数


假设A列是公历日期,A1是公历日期,我们在B1单元格输入公式:=TEXT(A1,"[$-130000]yyyy年m月"&IF(LEN(--TEXT(A1,"[$-130000]dd"))=1,"初","")&"d"),下拉完成公历转农历。





excel公历转农历方法二:使用text+MID函数实现更完整的转换


A列仍然是公历,B1输入公式:

=MID("甲乙丙丁戊己庚辛壬癸",MOD(TEXT(A1,"[$-130000]e")-4,10)+1,1)&MID("子丑寅卯辰巳午未申酉戌亥",MOD(TEXT(A1,"[$-130000]e")-4,12)+1,1)&"年"&TEXT(A1,"[$-130000][DBNum1]m月d日")


即可。

这里增加了参数[DBNum1],表示数值以“一、二、三......”中文格式显示。



excel公历转农历方法三:使用text+MID+ CHOOSE+ YEAR函数


  A1为公历,B1输入:

=CHOOSE(MOD(YEAR(A1)-1900,10)+1,"庚","辛","壬","癸","甲","乙","丙","丁","戊","己")&CHOOSE(MOD(YEAR(A1)-1900,12)+1,"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥")&TEXT(A1,"[dbnum1][$-130000]年m月"&IF(--TEXT(A1,"[$-130000]d")<11,"初","")&TEXT(A1,"[dbnum1][$-130000]d"))

这里可以对初几进行显示



excel公历转农历方法四:使用自定义函数


 上面介绍的excel公历转农历都是使用excel内置函数完成的,有一个弊端就是公式太长,如果使用自定义函数,在公式栏就可以简化输入。


  如下图所示,我们在B2输入公式:=nongli(A1),即可。C列农历简称中C1公式是:=RIGHT(B1,LEN(B1)-8)。


  下面是此自定义函数相关的代码:


PublicFunctionNongLi(OptionalXX_DATEAsDate)
DimMonthAdd(11),NongliData(99),TianGan(9),DiZhi(11),ShuXiang(11),DayName(30),MonName(12)
DimcurTime,curYear,curMonth,curDay
DimGongliStr,NongliStr,NongliDayStr
Dimi,m,n,k,isEnd,bit,TheDate
'获取当前系统时间
curTime=XX_DATE
'天干名称
TianGan(0)="甲"
TianGan(1)="乙"
TianGan(2)="丙"
TianGan(3)="丁"
TianGan(4)="戊"
TianGan(5)="己"
TianGan(6)="庚"
TianGan(7)="辛"
TianGan(8)="壬"
TianGan(9)="癸"
'地支名称
DiZhi(0)="子"
DiZhi(1)="丑"
DiZhi(2)="寅"
DiZhi(3)="卯"
DiZhi(4)="辰"
DiZhi(5)="巳"
DiZhi(6)="午"
DiZhi(7)="未"
DiZhi(8)="申"
DiZhi(9)="酉"
DiZhi(10)="戌"
DiZhi(11)="亥"
'属相名称
ShuXiang(0)="鼠"
ShuXiang(1)="牛"
ShuXiang(2)="虎"
ShuXiang(3)="兔"
ShuXiang(4)="龙"
ShuXiang(5)="蛇"
ShuXiang(6)="马"
ShuXiang(7)="羊"
ShuXiang(8)="猴"
ShuXiang(9)="鸡"
ShuXiang(10)="狗"
ShuXiang(11)="猪"
'农历日期名
DayName(0)="*"
DayName(1)="初一"
DayName(2)="初二"
DayName(3)="初三"
DayName(4)="初四"
DayName(5)="初五"
DayName(6)="初六"
DayName(7)="初七"
DayName(8)="初八"
DayName(9)="初九"
DayName(10)="初十"
DayName(11)="十一"
DayName(12)="十二"
DayName(13)="十三"
DayName(14)="十四"
DayName(15)="十五"
DayName(16)="十六"
DayName(17)="十七"
DayName(18)="十八"
DayName(19)="十九"
DayName(20)="二十"
DayName(21)="廿一"
DayName(22)="廿二"
DayName(23)="廿三"
DayName(24)="廿四"
DayName(25)="廿五"
DayName(26)="廿六"
DayName(27)="廿七"
DayName(28)="廿八"
DayName(29)="廿九"
DayName(30)="三十"
'农历月份名
MonName(0)="*"
MonName(1)="正"
MonName(2)="二"
MonName(3)="三"
MonName(4)="四"
MonName(5)="五"
MonName(6)="六"
MonName(7)="七"
MonName(8)="八"
MonName(9)="九"
MonName(10)="十"
MonName(11)="十一"
MonName(12)="腊"
'公历每月前面的天数
MonthAdd(0)=0
MonthAdd(1)=31
MonthAdd(2)=59
MonthAdd(3)=90
MonthAdd(4)=120
MonthAdd(5)=151
MonthAdd(6)=181
MonthAdd(7)=212
MonthAdd(8)=243
MonthAdd(9)=273
MonthAdd(10)=304
MonthAdd(11)=334
'农历数据
NongliData(0)=2635
NongliData(1)=333387
NongliData(2)=1701
NongliData(3)=1748
NongliData(4)=267701
NongliData(5)=694
NongliData(6)=2391
NongliData(7)=133423
NongliData(8)=1175
NongliData(9)=396438
NongliData(10)=3402
NongliData(11)=3749
NongliData(12)=331177
NongliData(13)=1453
NongliData(14)=694
NongliData(15)=201326
NongliData(16)=2350
NongliData(17)=465197
NongliData(18)=3221
NongliData(19)=3402
NongliData(20)=400202
NongliData(21)=2901
NongliData(22)=1386
NongliData(23)=267611
NongliData(24)=605
NongliData(25)=2349
NongliData(26)=137515
NongliData(27)=2709
NongliData(28)=464533
NongliData(29)=1738
NongliData(30)=2901
NongliData(31)=330421
NongliData(32)=1242
NongliData(33)=2651
NongliData(34)=199255
NongliData(35)=1323
NongliData(36)=529706
NongliData(37)=3733
NongliData(38)=1706
NongliData(39)=398762
NongliData(40)=2741
NongliData(41)=1206
NongliData(42)=267438
NongliData(43)=2647
NongliData(44)=1318
NongliData(45)=204070
NongliData(46)=3477
NongliData(47)=461653
NongliData(48)=1386
NongliData(49)=2413
NongliData(50)=330077
NongliData(51)=1197
NongliData(52)=2637
NongliData(53)=268877
NongliData(54)=3365
NongliData(55)=531109
NongliData(56)=2900
NongliData(57)=2922
NongliData(58)=398042
NongliData(59)=2395
NongliData(60)=1179
NongliData(61)=267415
NongliData(62)=2635
NongliData(63)=661067
NongliData(64)=1701
NongliData(65)=1748
NongliData(66)=398772
NongliData(67)=2742
NongliData(68)=2391
NongliData(69)=330031
NongliData(70)=1175
NongliData(71)=1611
NongliData(72)=200010
NongliData(73)=3749
NongliData(74)=527717
NongliData(75)=1452
NongliData(76)=2742
NongliData(77)=332397
NongliData(78)=2350
NongliData(79)=3222
NongliData(80)=268949
NongliData(81)=3402
NongliData(82)=3493
NongliData(83)=133973
NongliData(84)=1386
NongliData(85)=464219
NongliData(86)=605
NongliData(87)=2349
NongliData(88)=334123
NongliData(89)=2709
NongliData(90)=2890
NongliData(91)=267946
NongliData(92)=2773
NongliData(93)=592565
NongliData(94)=1210
NongliData(95)=2651
NongliData(96)=395863
NongliData(97)=1323
NongliData(98)=2707
NongliData(99)=265877
'生成当前公历年、月、日==>GongliStr
curYear=Year(curTime)
curMonth=Month(curTime)
curDay=Day(curTime)
GongliStr=curYear&"年"
If(curMonth<10)Then
GongliStr=GongliStr&"0"&curMonth&"月"
Else
GongliStr=GongliStr&curMonth&"月"
EndIf
If(curDay<10)Then
GongliStr=GongliStr&"0"&curDay&"日"
Else
GongliStr=GongliStr&curDay&"日"
EndIf
'计算到初始时间1921年2月8日的天数:1921-2-8(正月初一)
TheDate=(curYear-1921)*365+Int((curYear-1921)/4)+curDay+MonthAdd(curMonth-1)-38
If((curYearMod4)=0AndcurMonth>2)Then
TheDate=TheDate+1
EndIf
'计算农历天干、地支、月、日
isEnd=0
m=0
Do
If(NongliData(m)<4095)Then
k=11
Else
k=12
EndIf
n=k
Do
If(n<0)Then
ExitDo
EndIf
'获取NongliData(m)的第n个二进制位的值
bit=NongliData(m)
Fori=1TonStep1
bit=Int(bit/2)
Next
bit=bitMod2
If(TheDate<=29+bit)Then
isEnd=1
ExitDo
EndIf
TheDate=TheDate-29-bit
n=n-1
Loop
If(isEnd=1)Then
ExitDo
EndIf
m=m+1
Loop
curYear=1921+m
curMonth=k-n+1
curDay=TheDate
If(k=12)Then
If(curMonth=(Int(NongliData(m)/65536)+1))Then
curMonth=1-curMonth
ElseIf(curMonth>(Int(NongliData(m)/65536)+1))Then
curMonth=curMonth-1
EndIf
EndIf
'生成农历天干、地支、属相==>NongliStr
NongliStr="农历"&TianGan(((curYear-4)Mod60)Mod10)&DiZhi(((curYear-4)Mod60)Mod12)&"年"
NongliStr=NongliStr&"("&ShuXiang(((curYear-4)Mod60)Mod12)&")"
'生成农历月、日==>NongliDayStr
If(curMonth<1)Then
NongliDayStr="闰"&MonName(-1*curMonth)
Else
NongliDayStr=MonName(curMonth)
EndIf
NongliDayStr=NongliDayStr&"月"
NongliDayStr=NongliDayStr&DayName(curDay)
NongLi=NongliStr&NongliDayStr
EndFunction

为什么微信上的WPS上写的时间怎么会成公元?

这个是单元格格式的问题导致的。你可以选中对应的单元格,点右键选择设置单元格格式,然后选择日期,选择格式的日期格式确认即可。这个是自己手机的一个显示格式问题,在表格当中确认好的话需要选择保存,然后进行确认。然后用手机打开的话最好是确认好了。

公元是什么

公元前和公元后是公元纪年法的表述方式,这是西方通用的纪年方法,也是国际通用的纪年方法。简单来说,就是以基督教创立者耶稣出生的那一年为公元元年。他出生之前的年份称作公元前XX年,出生之后的年份称作公元(后)XX年。比如今年是2022年,也就是耶稣出生后的第2022年。

公元前是公历纪元法中对耶稣诞生节点的时间划分称谓。在公历纪元法中,耶稣诞生之前的日期为公元前,而耶稣诞生后的日期称为公元后,每十年称作一个年代,每一百年称作一个世纪,我国从1949年正式规定采用公元纪年,同时保留农历纪年法。

文章标签:信息技术办公软件WPS数学软件