Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用excel或表格公式计算即将到来的任务日期,直到系统日期交叉_Excel_Excel Formula_Google Sheets Formula - Fatal编程技术网

使用excel或表格公式计算即将到来的任务日期,直到系统日期交叉

使用excel或表格公式计算即将到来的任务日期,直到系统日期交叉,excel,excel-formula,google-sheets-formula,Excel,Excel Formula,Google Sheets Formula,我想计算即将到来的任务日期,直到使用excel或sheets公式跨越系统日期 “F2单元格必须有一个可以计算截止日期的公式 基于A2、B2、C2、D2。 如果当前系统日期为9号,F2将显示下一个到期日期为2021年1月8日“ “F2单元格必须有一个可以计算截止日期的公式 基于A2、B2、C2、D2。 如果当前系统日期为9号,F2将显示下一个到期日期为2020年12月15日 在跨越系统日期(即2020年12月16日)后,如果我查看单元格F3,它必须将值显示为 2021年6月15日” 我试过了

我想计算即将到来的任务日期,直到使用excel或sheets公式跨越系统日期

“F2单元格必须有一个可以计算截止日期的公式 基于A2、B2、C2、D2。 如果当前系统日期为9号,F2将显示下一个到期日期为2021年1月8日“ “F2单元格必须有一个可以计算截止日期的公式 基于A2、B2、C2、D2。 如果当前系统日期为9号,F2将显示下一个到期日期为2020年12月15日

在跨越系统日期(即2020年12月16日)后,如果我查看单元格F3,它必须将值显示为 2021年6月15日”

我试过了

=if(day(today())>=day(F2),eomonth(F2,D2-1)+day(F2),F2)

我想我有一些公式似乎是有效的。我已经把它放进去给你测试了。目前,我正在使用一个中间列E列来显示第一个到期日,但可以将其合并到公式中以删除该要求

对于测试,我还将NOW()替换为一个变量(在H2中设置),以便我们可以使用不同的有效系统日期进行测试

当前到期日的主要公式为:

=IFERROR(IF(NOW()<=E7,
  E7,
  eomonth(E7,(rounddown(datedif(E7,NOW(),"M")/D7)+1)*D7-1) +C7  ))
<> P>这可能是一个月递增的,在开始日期A7,在月中旬的情况下,大于“月的日期”值。这可以通过添加一些IF逻辑来处理,如果这是您想要的


如果您有一个开始日期为22020年12月20日、每月日期为20日、频率为2的条目,那么今天(2020年12月10日)的预期截止日期是什么?2021年2月20日?或2020年12月20日?12月20日,因为系统日期未超过12月20日。如果系统日期为dec21,则其值必须为Feb 20
=iferror(eomonth(A7,-1+D7)+C7)