我正在使用此公式来确定日期是否在F列中的日期之后出现,而是在G + 3个工作日之前的日期之前。
我使用的是以下配方,效果很好:
=SUMPRODUCT(($F$5:$F$1000>$G$5:$G$1000)*($F$5:$F$1000<($G$5:$G$1000+3)))
但是我意识到我并没有考虑到决赛中的周末&#34; +3。&#34;
所以我尝试了这个:
=SUMPRODUCT(($F$5:$F$1000>$G$5:$G$1000)*($F$5:$F$1000<(WORKDAY($G$5:$G$1000,3))))
它返回#VALUE!
无论我是否按 Ctrl + Shift + 输入,都会发生这种情况。
如何让这项工作好吗?
答案 0 :(得分:1)
由@Tim指定,workday
函数无法接受范围。但是你可以使用weekday
函数模拟你需要的东西:
If(weekday(G2:G5; x)>=y;5;3)
x
是您的星期日代码,y
是星期三。如果你的工作日大于周三,那么你将总和5而不是3。
=SUM(IF($F$2:$F$3 > $G$2:$G$3; 1; 0)*
IF($F$2:$F$3 < $G$5:$G$1000 + IF(WEEKDAY($G$2:$G$3)>= Y ;5;3); 1; 0))
工作日确实接受范围,并返回工作日的范围。当你计算if(也接受一个范围)时,你会创建一个0/1矩阵(就像你的 条件有效的行的指示符矩阵)。如果您*两个条件矩阵,您将拥有与两个条件匹配的剩余行。最后,如果你申请金额,你将得到计数。
如果条件需要公式
,这是一种模拟sumproduct
的方法
你必须使用ctrl + shift + enter。
03/09/2015 02/09/2015
07/09/2015 03/09/2015
使用此日期我获得了2的结果。 哪个是正确的,两个日期都比他们的合作伙伴大,但低于他们的合作伙伴+ 3个工作日
P.S:我使用西班牙语Excel,因此它可能是公式翻译的错误
答案 1 :(得分:1)
Lori_m,在我的问题评论中提供了一个有效的答案:
尝试在公式中插入一个+号以将范围转换为数组:WORKDAY(+ $ G $ 5:$ G $ 1000,3) - lori_m 17小时前
感谢。
答案 2 :(得分:0)
Start_Date
函数的WORKDAY
参数无法接受范围(例如代码中的$G$5:$G$1000
)。如果没有更多细节和一些样本数据,我不确定你要做什么,所以这是我能给你的最佳帮助。