【问题标题】:Week number that overlaps between 2 years in excelexcel中2年重叠的周数
【发布时间】:2017-10-04 16:25:04
【问题描述】:

我试图在 excel 中获取周数,我的周从周三到周二开始。我使用了=WEEKkNUM(A1,13),其中A1 是一个包含日期的单元格。

挑战:当我将 weeknum 用于1st of JAN 2016 时,它显示周数为 1,这是错误的。 30th of DEC 2015 是 53 的第一周。换句话说,当 weeknum 到达一年的第一天时,它认为它是一年中的第一周,这是错误的。附上问题截图。

期望:1st-5th of JAN, 2016 必须是 53.2015 周的一部分,而不是 01.2016 周的一部分

请帮忙。

谢谢!

【问题讨论】:

  • 我很理解你的问题。但是,我有一个问题:如果 2016 年 1 月 5 日(2016 年的第一个星期二)被认为是 2015 年第 53 周的一部分,那么您可以将 2016 年 1 月 6 日(2016 年的第一个星期三)作为第 2 周 2016 年?还是必须是 2016 年的第 1 周?
  • 谢谢彼得。 2016 年 1 月 6 日是 2016 年的第 1 周

标签: excel


【解决方案1】:

正确的公式是 =ISOWEEKNUM(A2-2)

【讨论】:

  • 根据我对我的回答的评论,您可以通过简单的 =ISOWEEKNUM(A2-2) 获得相同的结果
【解决方案2】:

在 M2 中输入此公式=WEEKNUM(A3,13)-1,然后从 M3 中输入此公式=IF(WEEKNUM(A3,13)=1,M2,WEEKNUM(A3,13)-1) 并将其拖到底部。您将有 52 周而不是 53 周,这是合乎逻辑的,因为您没有跨周。

2015 穿越。

2016 穿越。

【讨论】:

  • 2015 是 53 周 :(
  • 其实不是……如果不计算跨周(2015年第一周,有6天)……
【解决方案3】:

另一种解决方案:

= MOD(WEEKNUM(A1,13)-IF(WEEKDAY(DATE(YEAR(A1),1,1),13)>1,1,0)-1,52)+1

【讨论】:

  • @KhaderAbdelrahman 正确。如果将一年的开始和结束定义为一年中的第一个星期三,则不可能超过(或少于)52 周。
  • @KhaderAbdelrahman 这就是为什么我特别问你一年的第一周应该被认为是第 1 周还是第 2 周。如果你想保留 53,那么你的周数将从 2 变为 53 1 到 52。
  • 我们如何创建不检查一年中的第一天是否是星期三的公式?我相信我们可以使用 ISOWEEKNUM 函数,因为它可以直到一年是 53 周,但不确定如何。你怎么看?
  • @Peter >If the start and end of the year is defined as the first Wednesday in the year, it is impossible to have more than (or less than) 52 weeks - 我认为这不是真的。 2020 年的第一个星期三是 1 月 1 日,2021 年的第一个星期三是 1 月 6 日,因此 2020 年有 53 周。平均每 5 年或 6 年中就有 1 人有 53 周
  • @barryhoudini 谢谢,我意识到在这次讨论之后不久,我还没有时间研究它来改变我的公式。
【解决方案4】:

在计算ISO 周数的更简单公式出现之前,我有一个更长的方法来计算。这种类型的公式的优点是它可以根据日期开始或日期开始无限地调整。

此版本应根据第 1 周的开始日期为您提供周数:一年中的第一个星期三:

=INT((A2-WEEKDAY(A2-3)-DATE(YEAR(A2+1-WEEKDAY(A2-3)),1,7))/7)+2

使用该公式,我得到以下年份的 53 周:

2014、2020、2025、2031

【讨论】:

  • 非常感谢您的建议。我们非常接近解决方案。我仍然坚持认为 2015 年年底是第 53 周的一部分,因为如果您检查 ISO 周数,您会发现 12 月 28 日至 1 月 3 日是第 53.2015 周。如果我们想对我的日历应用相同的逻辑,我们必须移动两天。我尝试了以下 =ISOWEEKNUM(A1+2) 但仍然没有得到正确的解决方案。有什么建议吗?
  • 伙计们,我想我找到了解决方案。公式为:=IF(INT(WEEKDAY(A2,13)​​)
  • 要使 2015 年有 53 周,您需要从 2014 年 12 月 31 日开始 2015 年的第 1 周。一般规则是第 1 周从 12 月 31 日或之后的第一个星期三开始。如果您对此感到满意,那么您的公式就完美了!
  • ....这个公式也会给出相同的结果 - =ISOWEEKNUM(A2-2) 或等效的=WEEKNUM(A2-2,21)
猜你喜欢
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 2021-08-17
  • 1970-01-01
  • 1970-01-01
  • 2015-07-30
  • 2016-10-05
  • 2012-06-06
相关资源
最近更新 更多