Excel:每月第三个星期三

Excel:每月第三个星期三

我需要获取某个日期之后的下一个 IMM 日期。

IMM 日期定义为每年三月/六月/九月/十二月的第三个星期三。

答案1

如果您在 A2 中有一个日期,并且想要获取下一个 IMM 日期(根据您的 IMM 日期定义,即三月、六月、九月和十二月的第三个星期三),则使用此公式

=LOOKUP(A2,DATE(YEAR(A2),{0,3,6,9,12;3,6,9,12,15},22)-WEEKDAY(DATE(YEAR(A2),{0,3,6,9,12;3,6,9,12,15},4)))

以所需日期格式格式化结果单元格。如果 A2 是 IMM 日期,则公式会给出下一个日期,应该这样工作吗?

解释:

您可以使用此公式来获取一个月内的第一个星期三

=DATE(y,m,8)-WEEKDAY(DATE(y,m,4))

对于您选择的任何年份 = y 和月份 = m

4 可以变化以表示一周中的不同日子,8 可以更改为 22 以获得该月的第三个星期三。在上面的公式中,这个概念被扩展为在公式中生成一个日期“表”,其中顶部“行”由去年 12 月的第三个星期三组成,然后是当年的 3 月、6 月、9 月和 12 月 - 第 2 行包含当年的 4 个日期,然后是明年 3 月的日期。然后,LOOKUP 在该表中查找 A2,与最后的顶行第三个星期三,并返回下一个倒数第三个星期三。

有一种更短的方法,它不使用 WEEKDAY 函数而是使用 FLOOR......但我通常会避免使用该方法,因为它依赖于使用一个特定的日期系统(1900 或 1904),而我上面提供的版本适用于您使用的任何一个日期系统。

此版本仅适用于[默认] 1900 日期系统

=LOOKUP(A2,FLOOR(DATE(YEAR(A2),{0,3,6,9,12;3,6,9,12,15},17),7)+4)

答案2

你可以用简单的方法找到今年第一个月的第三个星期三。

其中 A1 是一年的第一天或DATE(YEAR(TODAY()),1,1)

=A1+(25-WEEKDAY(A1))

相关内容