农历日期
Foxtable提供了一个Lunar类型,专门用于农历和公历之间的转换。
Lunar的属性包括:
属性 |
说明 |
Year |
返回农历年 |
Month |
返回农历月,由于可能存在闰月,所以值在1到13之间,例如某年闰7月,那么该年闰7月的Month属性为8,8月的Month属性为9 |
Day |
返回农历日 |
LeapMonth |
如果给定的日期在闰年,则返回第几个月是闰月,例如2007年是闰7月,等于是第8个月是闰月,所以LeapMonth属性为8 |
IsLeapMonth |
逻辑型,给定的日期如果在闰月,则返回True |
IsLeapYear |
逻辑型,给定的日期如果在闰年,则返回True |
SolarDate |
日期型,返回公历日期 |
LunarDate |
字符型,返回农历日期的字符表示 |
定义一个Lunar的语法有两种。
语法一
New Lunar(Date)
Date: 公历日期
示例
'输出2002年3月17日对应的农历日期
Dim
ln
As
New
Lunar(#3/17/2002#)
output.show(ln.LunarDate)
'输出2006年8月25日对应的农历日期
ln = New Lunar(#8/25/2006#)
Output.show(ln.LunarDate)
If ln.IsLeapMonth Then
Output.Show("这是闰月!")
End If
语法二
New Lunar(Year, Month, Day, Leap)
Year: 农历年
Month: 农历月
Day: 农历日
Leap: 逻辑型,是否闰月
示例
'获得农历2008年8月15日(中秋节)对应的阳历日期
Dim ln As New
Lunar(2008,8,15,False)
output.show(ln.SolarDate)
'获得2006年闰7月15日对应的阳历日期
ln = New Lunar(2006,7,15,true)
output.show(ln.SolarDate)