gpt4 book ai didi

Excel - 计算两个日期之间每个月的天数

转载 作者:行者123 更新时间:2023-12-04 19:56:08 25 4
gpt4 key购买 nike

我正在尝试编写一个 Excel 公式,该公式可以拖过一行单元格以给出两个指定日期之间每个月的天数。例如:

         A           B         C       D       E       F 

1 | START DATE | END DATE | Jan | Feb | Mar | Apr |...
---------------------------------------------------------
2 | 10/02/17 | 15/03/17 | 0 | 19 | 15 | 0 |...

一个更复杂的问题是结束日期可能留空,表示结束日期应视为今天。我可以将公式放入从 C2 开始的单元格中,但必须保留 A 列和 B 列供用户输入。

我使用大量嵌套 if 语句取得了一些进展,但如果结束日期为空,则很难处理。

有人可以帮忙吗?

*编辑

到目前为止,我没有展示我写的公式,因为我担心它有点乱,但由于有人要求,我现在在下面展示(这个来自 C2 的公式)

 =IF(AND($A2<C$1,$B2<D$1),DAY(A2),IF($A2>=D$1,0,IF(AND($A2<C$1,$B2=""),IF(TODAY()<C$1,0,IF(TODAY()>C$1,IF(TODAY()<D$1,DAY(TODAY()),D$1-C$1),IF(TODAY()<D$1,INT(TODAY()-$A2),$D1-$C1))),IF(AND($A2>=C$1,$B2=""),IF(TODAY()<D$1,INT(TODAY()-$A2+1),D$1-$A2),IF(AND($A2>=C$1,$B2<D$1),$B2-$A2+1,IF(AND($A2<C$1,$B2<C$1),0,IF(AND($A2>=C$1,$B2>=D$1),D$1-$A2,IF(AND($A2<C$1,$B2<D$1),DAY(B2),IF(AND($A2<C$1,$B2>=D$1),D$1-C$1,0)))))))))

最佳答案

无论如何,这是基于标准公式的完整性替代方法

=max(0,min(end1,end2)-max(start1,start2)+1)

对于 2 个日期范围之间的重叠,这给出了

=MAX(0,MIN(IF($B2="",TODAY(),$B2),EOMONTH(DATEVALUE(C$1&"-17"),0))-MAX($A2,DATEVALUE(C$1&"-17"))+1)

enter image description here

关于Excel - 计算两个日期之间每个月的天数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44499098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com