星座分号码(Excel自定义函数计算身份证号码所属星座)
Excel自界说函数盘算身份证号码所属星座
弁言
身份证号码寻常由18位数字构成,包含?地点码、?出生日期码、?排序码和?校验码。地点码:前6位表现具体地点信息,包含省、市、县(区)的代码;出生日期码:第7-14位表现出生日期;排序码:第15-17位表现在同一地点码范围内同一天出生的人的排序号(此中,第17位数字用于表现性别,奇数表现男性,偶数表现女性);校验码:第18位是校验码,用于校验前17位数字的准确性。
了解身份证号码的编码办法后,我们就可以依据身份证号码提取出生日期等信息。更进一步地,我们还能盘算出身份证号码所属星座。
完成思绪
由于Excel本身没有内置的干系函数,我们可以使用VBA自界说函数GetConstellation(身份证号),用以盘算出身份证号码所属星座。函数的完成逻辑如下:
1.截取身份证号码第11-12位,获取出生月份;
2.截取身份证号码第13-14位,获取出生日;
3.依据出生日期及对应的星座,推断身份证号码所属星座。(见下表)
星座 | 日期范围 |
白羊座 | 3 月 21 日 - 4 月 19 日 |
金牛座 | 4 月 20 日 - 5 月 20 日 |
双子座 | 5 月 21 日 - 6 月 21 日 |
巨蟹座 | 6 月 22 日 - 7 月 22 日 |
狮子座 | 7 月 23 日 - 8 月 22 日 |
处女座 | 8 月 23 日 - 9 月 22 日 |
天秤座 | 9 月 23 日 - 10 月 23 日 |
天蝎座 | 10 月 24 日 - 11 月 22 日 |
射手座 | 11 月 23 日 - 12 月 21 日 |
摩羯座 | 12 月 22 日 - 1 月 19 日 |
水瓶座 | 1 月 20 日 - 2 月 18 日 |
双鱼座 | 2 月 19 日 - 3 月 20 日 |
盘算所属星座的VBA代码
Function GetConstellation(id As String) As String
Dim month As Integer, day As Integer
month = CInt(Mid(id, 11, 2))
day = CInt(Mid(id, 13, 2))
Select Case month
Case 1
GetConstellation = IIf(day < 20, "摩羯座", "水瓶座")
Case 2
GetConstellation = IIf(day < 19, "水瓶座", "双鱼座")
Case 3
GetConstellation = IIf(day < 21, "双鱼座", "白羊座")
Case 4
GetConstellation = IIf(day < 20, "白羊座", "金牛座")
Case 5
GetConstellation = IIf(day < 21, "金牛座", "双子座")
Case 6
GetConstellation = IIf(day < 22, "双子座", "巨蟹座")
Case 7
GetConstellation = IIf(day < 23, "巨蟹座", "狮子座")
Case 8
GetConstellation = IIf(day < 23, "狮子座", "处女座")
Case 9
GetConstellation = IIf(day < 23, "处女座", "天秤座")
Case 10
GetConstellation = IIf(day < 24, "天秤座", "天蝎座")
Case 11
GetConstellation = IIf(day < 23, "天蝎座", "射手座")
Case Else
GetConstellation = IIf(day < 22, "射手座", "摩羯座")
End Select
End Function
使用自界说函数GetConstellation

声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。