Excel weeknum函数返回错误的一周

时间:2016-07-14 14:34:25

标签: excel

问题与标题一样。

我有一个单元格," D4",日期" 09/07 / 2016"在里面。相邻的细胞具有公式" = weeknum(D4,1)"。该功能的输出是" 28"。但是在星期日和星期六的基础上,星期六7月9日在第28周没有 - 那是在第27周。

我认为这可能与星期六/星期日和星期开始和结束等有关,所以我尝试了上周的多个不同日期 - 星期一,4日,星期二,星期五,星期六,等等。每个案例," weeknum"返回" 28"的值。

我只注意到了这个问题,因为我有一个宏,它使用带有周数的单元格值来查找我们的帐户团队每周保存的电子表格。正如他们已经 - 正确地 - 将电子表格保存为"第27周和第34周,它没有用。我最初认为帐户团队错了,但我在网上查了一下,他们是对的。

怎么会发生这种情况?当然Excel可能是错的,我一定是犯了某种错误?

我知道在第53周和第1周开始和结束时,Excel没有遵循ISO标准存在问题,但我不知道这会如何影响年中周。

我确实发现问题可能与英国与美国的日期格式有关。但是,当然,6月7日也不是第28周。

2 个答案:

答案 0 :(得分:3)

所有内容都记录在WEEKNUM

  

此功能有两个系统:

     

系统1包含1月1日的一周是该周的第一周   年,并编号为第1周。

     

系统2包含一年中第一个星期四的一周是   一年中的第一周,并编号为第1周。这个系统是   ISO 8601中规定的方法,通常称为   欧洲周编号系统。

     

语法

     

WEEKNUM(SERIAL_NUMBER,[return_type])

Return_type  Week begins on  System 
...
21           Monday          2

所以=WEEKNUM("09/07/2016",21)将按照ISO 8601中的定义进行计算,因为Return_type 21是唯一一个使用System 2的人。

ISOWEEKNUM

=ISOWEEKNUM("09/07/2016")

也会这样做。

答案 1 :(得分:0)

=ISOWEEKNUM(a2)-1为我返回正确的一周,与=WEEKNUM(a2,21)-1

相同