欢迎访问江门电脑培训-短期零基础速成学电脑!
语言选择: 繁體中文

办公软件教程

首页>专业知识>办公软件教程>计算指定日期所在月份有几个星期日

计算指定日期所在月份有几个星期日

如图13-61所示,需要计算A列日期所在月份有几个星期日。在B2单元格中输入以下数组公式,按<Ctrl+Shift+Enter>组合键,向下复制到B7单元格。

{=COUNT(0/(WEEKDAY(TEXT(A2,"e-m")&-ROW($1:$31),2)=7))}

首先,用TEXT函数返回A2单元格的日期“年-月”,再用文本连接符与“ROW($1:$31)”连接,得到一组日期样式的字符串。

{"2016-6-1";"2016-6-2";"2016-6-3";……;"2016-6-30";"2016-6-31"}

然后,用WEEKDAY函数依次判断这些字符串是星期几,对于实际不存在的日期,如2016-6-31,将返回错误值#VALUE!,得到内存数组结果为:{3;4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;#VALUE!}

再用等式判断以上结果是否等于7,得到由逻辑值TRUE、FALSE及错误值构成的新内存数组。{FALSE;FALSE;FALSE;FALSE;TRUE;……;#VALUE!}

接下来用0除以以上内存数组,0除以TRUE结果为0,0除以FALSE和错误值,结果为错误值#DIV/0!和#VALUE!。

{#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;……;#VALUE!}

最后,用COUNT函数统计其中的数值个数,得到的结果就是每个月的星期日天数。

也可以使用以下数组公式完成同样的计算。

{=COUNT(0/(MOD(TEXT(A2,"e-m")&-ROW($1:$31),7)=1))}

先用TEXT函数构成1~31日的日期样式的字符串。

再用MOD函数计算日期字符串与7相除的余数,如果日期为星期日,MOD函数结果为1。对于不存在的日期返回错误值#VALUE!。

接下来用等式判断MOD函数的结果是否等于1,返回由逻辑值和错误值#VALUE!构成的内存数组。

0除以内存数组结果,最后使用COUNT函数计算相除后的数值个数。


在线留言


用手机扫描二维码关闭
二维码