|
第六题交作业
以星期一作为一个星期的开始,那么请设计一个公式返回本周处于本年度第几周
数组公式- =IF(WEEKDAY(TODAY(),2)=7,SUM((WEEKDAY(DATE(YEAR(TODAY()),1,ROW($1:$366)),2)=7)*(DATE(YEAR(TODAY()),1,ROW($1:$366))<=TODAY())),SUM((WEEKDAY(DATE(YEAR(TODAY()),1,ROW($1:$366)),2)=7)*(DATE(YEAR(TODAY()),1,ROW($1:$366))<=TODAY()))+1)
复制代码 思路:如果今天是星期天,就计算从1月1号到现在星期天的天数,否则就是1月1号到现在星期天的天数加1
看了答案之后,发现思路是对了,但是公式不够简化。根深蒂固的认为(WEEKDAY(TODAY(),2)=7或者(WEEKDAY(TODAY(),2)<>7的返回值为TRUE或FALSE,而忽略了1和0两个值,如果把1和0运用到公式中就能简化不少
数组公式- =SUM((DATE(YEAR(TODAY()),1,ROW($1:$366))<=TODAY())*(WEEKDAY(DATE(YEAR(TODAY()),1,ROW($1:$366)),2)=7))+(WEEKDAY(TODAY(),2)<>7)
复制代码
[ 本帖最后由 ringdove 于 2011-7-29 21:00 编辑 ] |
|