Excel 行公式每月末第 n 行

Excel 行公式每月末第 n 行

我想创建一个时间表,以日期为单位,每 4 行添加 1 个月。我的时间表从第 7 行开始(第 6 行是标题)。日期应始终是月末日期。这是我目前拥有的公式:

=DATE(YEAR(添加日期),MONTH(添加日期)+INT((ROW()-ROW(A$6)-1)/2),DAY(添加日期))

我似乎无法弄清楚如何让结果正确显示月末,它似乎想添加 30 天而不是 1 个月。

有任何想法吗?

谢谢

答案1

如果您希望日期始终是月底,请使用该EOMONTH函数(除非您使用的 Excel 版本非常早期,缺少该函数)。

我假设Add_Date这是你工作簿中某个地方的某个日期。

=EOMONTH(Add_Date,INT((ROWS($1:1)-1)/4))

或者,使用动态每月行数:

=EOMONTH(Add_Date,INT((ROWS($1:1)-1)/Rows_Per_Month))

在此处输入图片描述

答案2

当A7中有日期时,请尝试A8中的公式,然后下拉:

=DATE(YEAR($A$7),MONTH($A$7)+INT((ROW(A7)-6)/4)+1,1)-1

在此处输入图片描述

答案3

谢谢 Emily。你的回复帮我解决了我试图解决的问题。

=DATE(YEAR(添加日期),MONTH(添加日期)+INT((ROW()-ROW(J$6)-1)/Rows_Per_Month)+1,1)-1

我确实对 Rows_Per_Month 进行了更改,以允许行数动态变化。我也确实需要保留 Add_Date,因为开始日期来自另一张表。

再次感谢。

答案4

由于您没有提供示例数据,因此我想建议两种可能的方法:

在此处输入图片描述

方法 1:

  • 获取相邻列的增量。

  • 单元格中的公式AG26

    =IF(MOD(CELL("row",AF25),4)=0, DATE(YEAR(AF26),MONTH(AF26)+1,DAY(AF26)),"")
    

方法 2:

  • 在同一列中获取增量。

  • 单元格中的公式AH27

    =DATE(YEAR($AH$26),MONTH($AH$26)+INT((ROW()-25)/4),DAY($AH$26))
    

注意:

  • 这里-25是可编辑的,并且应该根据源日期的行号(即AH26)。

  • 如果您不喜欢计算行号,那么请在单元格中使用此公式AH27

    =DATE(YEAR($AH$26),MONTH($AH$26)+INT((ROW()-ROW(AH$25))/4),DAY($AH$26))
    
  • 根据需要调整单元格引用。

相关内容