首页 > 解决方案 > 偏移周年日期

问题描述

我在 C2 有一个周年纪念日,还有从 E3 到 E6 的其他周年纪念日。

如果周年纪念日<今天,我想要那个

C2 值是下一个周年日期。

示例

以这个例子为例,如果今天我们是 2018 年 2 月 11 日,那么 C2 值将是 2019 年 2 月 11 日(E3)。然后,在 11/02/2019 之后,将是 30/03/2020 (E4)...

我想用 Excel 公式来做,我试过这样的东西:

=SI(C2<=TODAY();OFFSET(E3;1;0);C2)

但它不起作用...

如果没有人有公式的想法,也许在 VBA 中?

标签: excelvbaexcel-formulaexcel-2016

解决方案


在 C2 中尝试,

=aggregate(15, 7, (e3:index(e:e, match(1e99, e:e)))/(e3:index(e:e, match(1e99, e:e))>today()), 1)
'with semi-colon list separator
=aggregate(15; 7; (e3:index(e:e; match(1e99; e:e)))/(e3:index(e:e; match(1e99; e:e))>today()); 1)
'aggreagte was introduced with xl2010, for xl2003-xl2007 use,
=MIN(INDEX(E3:INDEX(E:E, MATCH(1E+99, E:E))+(E3:INDEX(E:E, MATCH(1E+99, E:E))<=TODAY())*1E+99, , ))
'in FR-FR
=AGREGAT(15; 7; (e3:index(e:e; EQUIV(1e99; e:e)))/(e3:index(e:e; EQUIV(1e99; e:e))>AUJOURDHUI()); 1)

请记住将 C2 格式化为日期,否则您最终可能会得到像 43402 这样的数字。


推荐阅读