Excel年度组合计算

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

yyyyww (example: 201525, year 2015 week 25) 

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

当计算回到2014年或更低时也是如此。 有谁知道或有这个解决scheme? 也许在VBA? 或公式诡计?

将公式添加到您的星期数字格式看起来像这样:

 =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) 

它会创build一系列的星期数字,包括: 201453 => 201453 => 201502

  • LEFT(A2, 4)MID(A2, 5, 2)提取年份和周的组件
  • date(year, 1, 1) + (week - 1) * 7将其转换为实际的Exceldate值,
    例如201502 => 2015-01-08
  • date(year, 1, 1) + week * 7将创build“当前”date之后1周的date
  • year(date) * 100 + weeknum(date)将该date转换回yyyyww格式