VB日历代码
Type LunarInfo
iLorSMonth(13) As Integer '定义阴历大小月标志数组
iTotalDays As Integer '定义春节开始的天数
iLeapMonth As Integer '定义闰月的月份
bLeapYear As Boolean '定义闰年标志
End Type
Type LunarDate
strChinseEra As String * 4 '阴历年的干支
strLunarMonthName As String * 8 '阴历月份名称
strLunarDayName As String * 4 '阴历日子名称
strLunarAnimal As String * 2 '阴历年份属相
iLunarDay As Integer '阴历日子数值
iLunarMonth As Integer '阴历月份数值,如果是闰月,则返回负值
End Type
Public strHeavenlyStems(10) As String '定义天干数组
Public strEarthlyBranches(12) As String '定义地支数组
Public strAnimal(12) As String '定义属相数组
Public strZodiac As String '定义星座变量
Public strLunarMonthName(12) As String '定义阴历月份名称数组
Public strLunarDayName(30) As String '定义阴历日子名称数组
Public lLunarData(1900 To 2100) As Long '定义阴历信息数组
Public strSolarTerms(24) As String '定义二十四节气名称数组
Public dSolarTermsInfo(24) As Double '定义二十四节气信息数组
Public thisLunarInfo As LunarInfo '定义阴历信息记录体
Public thisLunardate As LunarDate '定义阴历日期记录体
'***************************************************************
'* 获取阴历年开始天数 *
'***************************************************************
Public Function GetLunarBeginDays(ByVal iYear As Integer) As Integer
Dim strbinLunarInfo As String
strbinLunarInfo = SetLunarBinStr(iYear)
If Len(strbinLunarInfo) > 19 Then
GetLunarBeginDays = Bin2Int(Mid(strbinLunarInfo, Len(strbinLunarInfo) - 18, 6))
Else
GetLunarBeginDays = Bin2Int(Mid(strbinLunarInfo, 1, Len(strbinLunarInfo) - 13))
End If
End Function
'***************************************************************
'* 获取阴历年日子数值子程序 *
'*******