Excel中。 Weeknum功能。 #值!错误。日历

时间:2018-03-16 10:12:36

标签: excel excel-formula

Value error

亲爱的人。正如你在图片中看到的那样,有一个#VALUE!当它试图显示一些周数时出错。

参考图片:

NR。 1.我试图弄清楚如何显示那周有日期编号的周数

NR。 2.我试图找出如何为那周没有日期编号的行显示空白单元格

工作簿:https://www.dropbox.com/s/ed6dt022i0yz6py/Calendar.xlsx?dl=0

帮助:!)

1 个答案:

答案 0 :(得分:0)

我认为这是你想要的,从周一到周日的周数

=IFERROR(WEEKNUM(AGGREGATE(15,0,C17:I17,1),2),"")

我选择使用Aggregate,因为如果范围内没有数字,它将会出错,因此IFERROR会给出一个空白。您可以使用MIN或MAX代替测试结果为零。您也可以使用LOOKUP或HLOOKUP。这可能是最短的方式

=IFERROR(WEEKNUM(LOOKUP(99999,C17:I17),2),"")

从12月31日开始的一周(“第53周”)实际上是2019年的第1周,所以你可以为此添加一个单独的条件。

enter image description here

为了解决“第53周”问题,我目前无法比这个相当长的公式做得更好

=IF(COUNT(C17:I17)=0,"",IF(AND(MONTH(LOOKUP(9E+99,C17:I17))=12,C17<>"",I17=""),1,WEEKNUM(LOOKUP(9E+99,C17:I17),2)))

其中说'如果它是12月的最后一周,并且该周的至少一天是空的,则该周是第二年的第一周'。

这可以进一步修改以处理ISO年份,其中第1周是包含星期四的第一周。