|
你运行一下可不可以,算工作日这个不难,就是去把工作日挑出来,没有上次你问的那个几个工作日后是什么日子难。
你都没有去琢磨。
以下UDF,需要准备一个法定假日表和一个周末调休上班的表,如果这两个参数省略,就是只考虑周末休息。
- let
- fx=(startdate as date,enddate as date,optional statutoryholidays as list,optional holidayshift as list)
-
- => List.Count(
- [a=List.Generate(()=>startdate,each _<=enddate,each Date.AddDays(_,1)),
- b=List.Select(a,each Date.DayOfWeek(_,1)<5
- and (if statutoryholidays is null then true else not List.Contains(statutoryholidays,_))),
- c=List.Select(a,each (if holidayshift is null then true else List.Contains(holidayshift,_))),
- d=b&c][d]
- )
- in
- fx
复制代码
|
|