3

在 Sharepoint 2010 计算列中计算开始时间和结束时间之间的天数时,如何排除周末(周六和周日)。

1.我在 Sharepoint 2010 中添加了一个日历,并且有两列作为开始时间和结束时间,现在我的要求是计算开始时间和结束时间之间的天数,不包括周末(周六和周日)意味着它将计算仅工作日。试过这个

=IF(AND((WEEKDAY(EndDate,2))<(WEEKDAY(StartDate,2)),((WEEKDAY(StartDate,2))-(WEEKDAY(EndDate,2)))>1),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)-2),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)))

还,

=(DATEDIF([StartDate],[EndDate],"d"))-INT(DATEDIF([StartDate],[EndDate],"d")/7)*2-IF((WEEKDAY([EndDate])-WEEKDAY([StartDate]))>0,2,0)+1

但没有得到正确的输出。

4

5 回答 5

2
=IF(AND((WEEKDAY(EndDate,2))<(WEEKDAY(StartDate,2)),((WEEKDAY(StartDate,2))-(WEEKDAY(EndDate,2)))>1),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)-2),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)))

this should do the trick :)

于 2013-07-31T09:59:20.937 回答
1

不知道为什么,但我以上面的-1结尾,即:

=IF(AND((WEEKDAY(EndDate,2))<(WEEKDAY(StartDate,2)),((WEEKDAY(StartDate,2))-(WEEKDAY(EndDate,2)))>1),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)-2),(((DATEDIF(StartDate,EndDate,"D")+1))-(FLOOR((DATEDIF(StartDate,EndDate,"D")+1)/7,1)*2)))-1

使用这种方式它对我有用。

于 2014-04-07T10:18:44.660 回答
0

试试下面的公式:

=DATEDIF([Start Date],[End Date],"D")-IF(WEEKDAY([End Date])=7,FLOOR((DATEDIF([Start Date],[End Date],"D")+WEEKDAY([Start Date]))/7,1)*2,FLOOR((DATEDIF([Start Date],[End Date],"D")+WEEKDAY([Start Date]))/7,1)*2+1)+IF(WEEKDAY([Start Date])=7,2,1)
于 2015-07-03T05:41:47.167 回答
0

这对我来说效果最好。

ROUNDUP(([End Time]-[Start Time]),0)-IF(WEEKDAY([End Time])=7,FLOOR((DATEDIF([Start Time],[End Time],"D")+WEEKDAY([Start Time]))/7,1)*2,FLOOR((DATEDIF([Start Time],[End Time],"D")+WEEKDAY([Start Time]))/7,1)*2+1)+IF(WEEKDAY([Start Time])=7,2,1)
于 2017-06-07T17:07:01.817 回答
0

在 sp 中计算 networkdays 的公式经过测试和工作:

=(DATEDIF([Start Date],[End Date],"D"))-INT(DATEDIF([Start Date],[End Date],"D")/7)*2-
IF(WEEKDAY([End Date])<WEEKDAY([Start Date]),2,
IF(OR(WEEKDAY([End Date])=7,WEEKDAY([Start Date])=1),1,0))+1
于 2020-11-21T20:07:25.847 回答