Excel中用lookup判断星座的公式解析

=LOOKUP(--TEXT(C2,"mdd"),{101,"摩羯座";120,"水平座";219,"双鱼座";321,"白羊座";420,"金牛座";521,"双子座";621,"巨蟹座";723,"狮子座";823,"处女座";923,"天秤座";1023,"天蝎座";1122,"射手座";1222,"摩羯座"})
公式怎么理解?这里面的{}是什么意思?

第1个回答  2019-03-09
{}表示里面的数据为数组。
第2个回答  2019-03-09
先说大框架:C2的数字转换为日期,取其中的月和日对应的数字,然后与后面的数字模糊匹配,找到比这个数字小的数字,然后取对应的星座。
TEXT(C2,"mdd") 是把C2的数字转换为日期,取其中的月和日对应的数字,在Excel里日期都是以一个数字来记录的,因此数字能转换为日期,这里不要年,只保留月和日,因为计算星座只要月日。
TEXT(C2,"mdd") 前面加两格减号--TEXT(C2,"mdd") 是把字符串转换为纯数字,得到的数字作为lookup函数的第一个参数,表示要查找的数字。
后面的{}里是查询数组,逗号表示是在同一行,分号表示下一行,这里就是一个数字一个逗号一个星座一个分号为一行,其实就是两列,第一列是数字,第二列是星座,第一列的数字是两个星座分隔的日期。
使用lookup函数查询前面那个数字在后面这个数组中哪个区间,然后就得到对应的星座了。本回答被提问者采纳
相似回答