Excel年周组合计算

Excel year-week combination calculation

我目前正在制作一个 excel 模型,其中日期是其中的一个重要方面。然而,由于信息来自不同的来源,有时它的结构是不现实的。 添加周或减去周时,我在计算年和周组合时遇到问题。 起始数据如下所示:

yyyyww (example: 201525, year 2015 week 25)

现在如果我想添加 3 周,我可以通过添加 3 来实现,结果是 201528。但是当涉及到 201552(有时是 yyyy53)时,它更难,因为我需要计算2016.

同样适用于计算时间,接近 2014 年或更早。有谁知道或有解决方案吗?也许在 VBA?还是公式技巧?

将 1 添加到周数格式的公式如下所示:

=YEAR(DATE(LEFT(A2, 4), 1, 1) + MID(A2, 5, 2) * 7) * 100 +
 WEEKNUM(DATE(LEFT(A2, 4), 1, 1) + MID(A2, 5, 2) * 7)

它将创建一系列周数,其中包括:201452 => 201453 => 201502

  • LEFT(A2, 4)MID(A2, 5, 2) 提取年和周分量
  • date(year, 1, 1) + (week - 1) * 7 将其转换为实际的 Excel 日期值,
    例如201502 => 2015-01-08
  • date(year, 1, 1) + week * 7 将创建一个在 "current" 日期
  • 之后 1 周的日期
  • year(date) * 100 + weeknum(date) 将该日期转换回 yyyyww 格式