星座分号码(Excel自定义函数计算身份证号码所属星座)

更新时间:2024-12-31 12:46:35 所在栏目: 白羊座点击量:

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

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