You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel:计算指定周几的下一个/上一个日期(周起始为周六)

解决方案

核心说明

以WEEKDAY(date,16)作为星期数判定标准(周六=1,周日=2,周一=3,周二=4,周三=5,周四=6,周五=7),公式中:

  • A1:基准日期单元格
  • B1:目标星期几的对应数值(比如要找周二,就填4)

计算下一个目标日期

公式:

=A1 + (B1 - WEEKDAY(A1,16) + 7) % 7 + IF(WEEKDAY(A1,16) >= B1, 7, 0)

逻辑拆解

  1. (B1 - WEEKDAY(A1,16) + 7) % 7:计算当前日期到本周内目标星期几需添加的天数(结果范围0-6)
  2. IF(WEEKDAY(A1,16) >= B1,7,0):若当前日期已是目标星期几或更靠后,直接加本周天数会得到当天或更早日期,因此额外加7天跳至下一周
  3. 两项结果相加后叠加到基准日期,得到严格下一个目标星期几的日期

计算上一个目标日期

公式:

=A1 - (WEEKDAY(A1,16) - B1 + 7) % 7 - IF(WEEKDAY(A1,16) <= B1, 7, 0)

逻辑拆解

  1. (WEEKDAY(A1,16) - B1 + 7) % 7:计算当前日期到本周内上一个目标星期几需扣除的天数(结果范围0-6)
  2. IF(WEEKDAY(A1,16) <= B1,7,0):若当前日期已是目标星期几或更早,直接减本周天数会得到当天或更晚日期,因此额外减7天跳至上一周
  3. 两项结果相减后从基准日期扣除,得到严格上一个目标星期几的日期

示例验证

假设基准日期A1为2024/5/20(周一,WEEKDAY(A1,16)=3):

  • 计算下一个周一(B1=3):返回2024/5/27(下一周周一),符合需求
  • 计算下一个周二(B1=4):返回2024/5/21(本周二)
  • 计算上一个周一(B1=3):返回2024/5/13(上一周周一)

内容的提问来源于stack exchange,提问作者L'le Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 09:15:05