【问题标题】:List yearly, monthly, quarterly, biweekly dates interval in a column through excel formula通过excel公式在列中列出每年、每月、每季度、每两周一次的日期间隔
【发布时间】:2019-12-28 03:15:51
【问题描述】:

我有下表。

在第一列中,我放置了句点(或实例数;它的作用类似于此表中的 ID)。该表名为“LoanSchedule”。 $B$20 存储一个日期。在这种情况下,我输入了 2020 年 2 月 20 日。 我在第 2 列中有这个公式来列出 $B$20 之后的连续每月日期。 $B$18 存储一年内的付款次数

=IF(AND([@[Payment Period]]<>"",$B$20<>"--"),IF($B$18=12,EOMONTH($B$20,ROW([@[Payment Period]])-ROW(LoanSchedule[[#Headers],[Payment Period]])-1)+DAY($B$20),"--"))

如果按月付款或 $B$18 = 12,则效果很好。 如果付款期限是每季度(4 年)、每年或每两周(26 周),我该如何修改公式,并列出相应的月份?

例如,如果我选择季度且 $B$20 保持不变,则第二列将显示的日期为 2020 年 5 月 20 日; 2020 年 8 月 20 日、2020 年 11 月 20 日、2021 年 2 月 20 日等。如果每两周一次。谢谢你的帮助。

【问题讨论】:

  • 你可以试试=DATE(YEAR($B$20),MONTH($B$20)+([@[Payment Period]]*(12/$B$18)),DAY($B$20))这样的公式来处理一个多月的案件。

标签: excel excel-formula


【解决方案1】:

您需要将 B18 中的条目(每年的 pmts 数)和付款期限转换为添加到原始日期的月数或天数。

我使用带有 vlookup 的查找表翻译了 {1,4,12},在 14 天的间隔(2 周)内分别处理 26 个。

我之所以选择这种方法,是因为如果除法结果不是整数,仅仅除以 12/$B$18 将需要更复杂的公式,因为这样就不会按月付款

=IF($B$18=26,$B$20+14*[@[Payment Period]],
EDATE($B$20,VLOOKUP($B$18,{1,12;4,3;12,1},2,FALSE)*[@[Payment Period]]))

B18 = 12

B18=4

B18=26

【讨论】:

  • 它就像一个魅力。我将研究这个公式并了解它是如何工作的。我只是在学习使用 EDATE。谢谢。
  • @Synod 很高兴为您提供帮助。如果您有任何问题,请回帖。由于我的回答似乎是您所需要的,请将其标记为已接受。见What should I do when someone answers my question
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多