一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于excel 星座 excel星座函数的文章,本文对文章excel 星座 excel星座函数好好的分析和解答,希望你能喜欢,只有你喜欢的内容存在,只有你来光临,我们才能继续前行。
我们可以直接使用身份证号码来生成生肖和星座,也可以通过身份证号码提取出来的出生日期结果再来生成生肖和星座。
下面就让我们一起来看看公式吧!
Excel函数获取生肖提取生日后再算出生肖
步骤一
先用之前我们讲到的提取身份证出生年月日的方法来提取出一下日期。
输入公式:【=TEXT(MID(B2,7,8),"0000-00-00")】
步骤二
得出了出生年月日以后,我们就可以利用下面函数来生成出生肖了。
输入公式:【=MID("鼠牛虎兔龙蛇马羊猴鸡狗猪",MOD(YEAR(C2)-4,12)+1,1)】
直接通过身份证号码提取生肖
我们除了生成日期后提取,还可以直接将身份证号码生成生肖,这样的话,也是省去了一个步骤。
输入公式:【=IF(LEN(B2)=15,MID("鼠牛虎兔龙蛇马羊猴鸡狗猪",MOD("19"&MID(B2,7,2)-4,12)+1,1),MID("鼠牛虎兔龙蛇马羊猴鸡狗猪",MOD(MID(B2,7,4)-4,12)+1,1))】
Excel函数获取星座提取日期后再生成星座
同样的先用公式提取日期,再用提取出来的结果生成生肖。
提取日期函数公式:【=TEXT(MID(B2,7,8),"0000-00-00")】
用日期结果生成星座函数公式:【=LOOKUP(--TEXT(C2,"mdd"),{101,"摩羯座";120,"水瓶座";219,"双鱼座";321,"白羊座";420,"金牛座";521,"双子座";621,"巨蟹座";723,"狮子座";823,"处女座";923,"天秤座";1023,"天蝎座";1122,"射手座";1222,"摩羯座"})】
直接通过身份证号码提取星座
同样的,下面这个公式可以直接通过身份证号码来生成出星座。
输入公式:【=VLOOKUP(VALUE("1900-"&TEXT(MID(B2,LEN(B2)/2+2,4),"#-##")),{1,"摩羯座";20,"水瓶座";50,"双鱼座";81,"白羊座";222,"金牛座";142,"双子座";174,"巨蟹座";205,"狮子座";236,"处女座";267,"天秤座";298,"天蝎座";328,"射手座";357,"摩羯座"},2,TRUE)】
Excel好玩有趣在于同一个结果,可以有不同的公式和方法来完成。下面的截图A列是出生日期,根据这些出生日期几月几日即可计算对应的星座。
excel计算星座通常会使用到LOOKUP、VLOOKUP等查找函数实现。下面提供三条计算星座的公式。
excel计算星座公式一:
B2单元格输入公式,然后下拉复制公式即可。
公式:=LOOKUP(--TEXT(A2,"mdd"),{101,"摩羯座";120,"水瓶座";219,"双鱼座";321,"白羊座";420,"金牛座";521,"双子座";621,"巨蟹座";723,"狮子座";823,"处女座";923,"天秤座";1023,"天蝎座";1122,"射手座";1222,"摩羯座"})
Excel计算星座公式二:
=LOOKUP(--TEXT(A2,"m.dd"),{1.01,1.21,2.19,3.21,4.21,5.21,6.22,7.23,8.23,9.23,10.23,11.22,12.22},{"魔羯座","水瓶座","双鱼座","白羊座","金牛座","双子座","巨蟹座","狮子座","处女座","天秤座","天蝎座","射手座","魔羯座"})
Excel计算星座公式三:
=VLOOKUP(MAX(21,DATE(1900,MONTH(A2),DAY(A2))),{21,"水瓶座";51,"双鱼座";81,"牧羊座";112,"金牛座";143,"双子座";174,"巨蟹座";206,"狮子座";237,"处女座";268,"天秤座";297,"天蝎座";328,"射手座";357,"魔羯座"},2,1)
附:星座表
宝瓶座:1月20日~2月18日
双鱼座:2月19日~3月20日
白羊座:3月21日~4月20日
金牛座:4月21日~5月20日
双子座:5月21日~6月21日
巨蟹座:6月22日~7月22日
狮子座:7月23日~8月22日
处女座:8月23日~9月22日
天秤座:9月22日~10月23日
天蝎座:10月23日~11月21日
人马座:11月22日~12月21日
摩羯座:12月22日~1月19日
其实最简单的思路应该是将生日(比如在A1)中的年份信息去掉(全部统一为1900年,用函数date(0,month(A1),day(A1)),再与星座分割日(比如水瓶座1月20日为20,双鱼座2月19日为49等)做大小比对。以前网上很多一句语句查星座的都是这个思路。
但这个方法有个隐蔽的bug:闰年。闰年里面的星座分割日在3月份之后要加1。隐蔽的bug是大忌!如果别人调用了你的函数,却总是有无规律的错误发生,有时绞尽脑汁找不出问题的所在,往往就是因为你函数中这种隐蔽的bug了。
为了绕过闰年的bug,我编写了下面的函数,直接仿造人肉查询月、日的过程。
当然,里面有可以优化的地方,比如月份的数组由于维数和内容一样,可以直接优化掉;比如最后的if语句结构可以用一个iif语句代替。但这些都是细枝末节,为了更好地体现编程思路,就不做这些“匠心”的优化了。
Function HOROSCOPE(x As Date) As String
Dim XZ(12) As String
Dim Yue(12) As Long
Dim Ri(12) As Long
XZ(0) = "摩羯座"
XZ(1) = "水瓶座"
XZ(2) = "双鱼座"
XZ(3) = "白羊座"
XZ(4) = "金牛座"
XZ(5) = "双子座"
XZ(6) = "巨蟹座"
XZ(7) = "狮子座"
XZ(8) = "处女座"
XZ(9) = "天秤座"
XZ(10) = "天蝎座"
XZ(11) = "射手座"
XZ(12) = "摩羯座"
Yue(1) = 1
Yue(2) = 2
Yue(3) = 3
Yue(4) = 4
Yue(5) = 5
Yue(6) = 6
Yue(7) = 7
Yue(8) = 8
Yue(9) = 9
Yue(10) = 10
Yue(11) = 11
Yue(12) = 12
Ri(1) = 20
Ri(2) = 19
Ri(3) = 21
Ri(4) = 20
Ri(5) = 21
Ri(6) = 22
Ri(7) = 23
Ri(8) = 23
Ri(9) = 23
Ri(10) = 24
Ri(11) = 23
Ri(12) = 22
m = Month(x)
d = Day(x)
If d < Ri(Yue(m)) Then
HOROSCOPE = XZ(Yue(m) - 1)
Else
HOROSCOPE = XZ(Yue(m))
End If
End Function
以上内容是小编精心整理的关于excel 星座 excel星座函数的精彩内容,好的文章需要你的分享,喜欢excel 星座 excel星座函数这篇精彩文章的,请您经常光顾吧!
上一篇:一条线的星座 星座的线叫什么
下一篇:更多种植养殖
本文标题:excel 星座 excel星座函数
本文链接:http://m.chayixing.com/article/169234.html
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于excel 星座 excel星座函数的文...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于一条线的星座 星座的线叫什么...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于星座运势今日运势查询运 星座...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于阳历8.25号是什么星座 阳历8月...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于星座不合顺口溜怎么说 星座不...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于风象星座都是疯子 风象星座都...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于各星座女的性格 星座女性格大...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于巨蟹和其他星座对比图 巨蟹和...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于世上最弱的星座排名榜 世上最...
一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于书包是什么星座 包书皮上装饰...