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

Excel日期时间表添加月内周数(周一为起始)的公式问题求助

解决Excel中以周一为起始的月内周数计算问题

问题根源

你之前使用的公式错误地将目标日期关联到当年1月的对应日期来计算周数,完全偏离了“月内周数”的计算逻辑,导致周数结果错误。

正确公式及说明

根据你提到的「每月第一个周一应显示为周数1」的需求,以下是精准的计算公式:

公式(Excel适用)

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

公式拆解

  • DATE(YEAR(A2), MONTH(A2), 1):获取当前日期A2所在月份的第一天
  • WEEKDAY(..., 3):返回以周一为0、周日为6的星期数值(例如2010年1月1日是周五,返回4)
  • MOD(7 - WEEKDAY(...),7):计算当月第一天到当月第一个周一的天数差(2010年1月1日到1月4日差3天)
  • DATE(...) + MOD(...):得到当月第一个周一的具体日期
  • INT((A2 - 第一个周一日期)/7) +1:计算当前日期与第一个周一的天数差,除以7取整后加1,最终得到月内周数

测试验证

  • 2010年1月4日(当月第一个周一):计算结果为1,符合需求
  • 2010年1月11日:结果为2
  • 2010年4月5日(4月第一个周一):结果为1

补充:兼容当月首日为周一的情况

如果当月第一天就是周一(比如2010年3月1日),公式会自动识别该日期为当月第一个周一,返回周数1,无需额外调整。

内容的提问来源于stack exchange,提问作者T. Hughes

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 05:25:30