Excel 公式,获取前一个星期三的日期

Excel 公式,获取前一个星期三的日期

我有以下公式,

=WORKDAY(TODAY(),-2)

这让我想到了 1 月 30 日。

有什么办法可以不在这个公式中输入 -2 就得到 1 月 30 日?我希望公式总是得到前一个星期三的日期,但我手动减去今天的工作日来得到前一个星期三。

答案1

作为参考,先前接受的答案某些情况下会错误地输出未来日期

此公式输出上一个星期三

=TODAY()-MOD(WEEKDAY(TODAY())+2,7)-1

如果今天是星期三,它也会输出前一个星期三。

MOD(..., 7)始终返回从 0 到 6 的值。

因此,-MOD(...)-1总是从中减去 1 到 7(天)的值TODAY()

+2(您可以调整公式中的值来获取不同的星期几)


例子:

  • 今天是2019-2-25 (Mon),输出2019-2-20 (Wed)
  • 今天是2019-2-26 (Tue),输出2019-2-20 (Wed)
  • 今天是2019-2-27 (Wed),输出2019-2-20 (Wed)
  • 今天是2019-2-28 (Thu),输出2019-2-27 (Wed)

答案2

怎么样:

=TODAY() - MOD(TODAY(), 7) + 4

这意味着获取当前周的第一天(星期六),然后加 4 = 星期三,(可选 -7 表示前一周)。

如果你想要前一周的数据(如果你还在周日或周一),那么if使用MOD(TODAY(), 7)

相关内容