我正在尝试计算 2019 年给定时间范围内的月数。
我的数据如下所示:
我将开始日期和结束日期列的格式更改为“日期”。 “以月为单位的持续时间”和输出列具有数字格式。
我接近它如下:
然后我按照 this website 的说明进行操作。对于嵌套的 IF 函数。
我想出了以下公式:(编辑:将 last datedif 更改为 2020 而不是 2019)
=IF(AND(YEAR(A3)<2019;YEAR(C3)=2019);DATEDIF(DATE(2019;1;1);C3;"m");IF(AND(YEAR(A3)<2019;YEAR(C3)>2019);12;IF(AND(YEAR(A3)=2019;YEAR(C3)=2019);DATEDIF(A3;C3;"m");IF(AND(YEAR(A3)=2019;YEAR(C3)>2019); DATEDIF(A3;DATE(2020;1;1);m);0))))
对于前 4 行,它正确返回 12。
但是,对于第 7 行和第 8 行,它返回 #NAME? .
无论我尝试什么,我似乎都无法让它发挥作用。关于如何解决这个问题的任何想法?
非常感激!
艾米
最佳答案
对于整个公式,除了最后一个 IF 语句之外,您在 DATEDIF(
中出错的地方是一致的。陈述:
DATEDIF(A3;DATE(2019;1;1);m);0)
首先你忘了把
m
引号:"m"
其次,你不小心交换了日期和单元格引用,所以它会解决
#NUM
.完整正确的公式应该是:=IF(AND(YEAR(A7)<2019;YEAR(C7)=2019);DATEDIF(DATE(2019;1;1);C7;"m");IF(AND(YEAR(A7)<2019;YEAR(C7)>2019);12;IF(AND(YEAR(A7)=2019;YEAR(C7)=2019);DATEDIF(A7;C7;"m");IF(AND(YEAR(A7)=2019;YEAR(C7)>2019);DATEDIF(DATE(2019;1;1);A7;"m");0))))
这会给你结果
4
.
关于电子表格 |使用日期的嵌套 IF 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59285039/