Excel公式,用于从现在到过去1年的几个月内将日期作为标志(1,0)获取.与过去 3 个月、过去 6 个月和年初至今一



>电子表格中有日期列。我需要 Excel 公式的帮助,以从现在到过去 1 年的几个月内将日期作为标志 (1,0( 获取。与过去 3 个月、过去 6 个月和年初至今一样。

数据集中的最新日期是 2 年 1 月 2019 日.这是我用于获取 YTD 的日期,但它仅获取列中最大日期的第 12 个月,而不是所有 12 个月。

=IF(B3=(DATE(YEAR(MAX($B:$B)),MONTH(MAX($B:$B))-12,1)),1,0)

我在 R3M 3 个月中使用了下面的公式,但这会使 YTD 公式变长并且需要很长时间才能运行。

=IF(B3=(DATE(YEAR(MAX($B:$B)),MONTH(MAX($B:$B)),1)),1,IF(B3=(DATE(YEAR(MAX($B:$B)),MONTH(MAX($B:$B))-1,1)),1,IF(B3=(DATE(YEAR(MAX($B:$B)),MONTH(MAX($B:$B))-2,1)),1,0)))

有什么方法可以缩短公式。

Month,     CMDATE_FLAG,  R3MDATE_FLAG,  YTDMDATE_FLAG,
2/1/2018,   0,    0,             1,
2/1/2018,   0,    0,             1,
3/1/2018,   0,    0,             0,
3/1/2018,   0,    0,             0,

这就是我从YTD得到的。我预计从2018年2月至2019年2月(12个月(在YTD标志下为"1"。 感谢您的帮助。

也许是这样的:

=IF(B2>=EDATE(MAX(B:B),-12),1,0)

这个公式将包括 13 个月。 您必须根据是否要从标记中排除 2018 年 2 月或 2019 年 2 月对其进行一些修改。

要仅排除 2019 年 2 月,请尝试:

=IF(AND($B2<> MAX($B:$B),$B2>=EDATE(MAX($B:$B),-12)),1,0)

要仅排除 2018 年 2 月,请尝试:

=IF(B3>EDATE(MAX(B:B),-12),1,0)

您可以对其他月份标志使用类似的委托人。

这些公式假定 B 列中的日期都在当月的第一天,如数据示例中所示。如果不是这种情况,则可能需要修改公式。

最新更新