pq 获取工作日天数

Power Query xiaoni ⋅ 于 2019-10-13 22:02:53 ⋅ 最后回复由 wdx223 2019-10-14 12:41:06 ⋅ 2063 阅读

pq有没有一个函数象工作表函数Networkdays一样直接获取两日期的工作日天数(不包括周六和周日的天数)
=NETWORKDAYS(D28,D29)象这个工作表函数一样

回复数量: 1
  • wdx223
    2019-10-14 12:41:06
    (startdate as date,enddate as date,optional hld)=>
        let
            a={Number.From(startdate)..Number.From(enddate)},
            b=Table.FromValue(a,[DefaultColumnName="n"]),
            c=Table.TransformColumns(b,{"n",Date.From}),
            d=if not (hld is list) then {hld} else hld,
            e=Table.SelectRows(c,each not List.Contains(d,[n])),
            f=Table.Group(
                          e,
                          "n",
                          {"r",each List.Count([n])},
                          1,
                          (x,y)=>[
                                  fx=(x)=>Byte.From(Date.DayOfWeek(x,Day.Monday)>4),
                                  r=fx(x)-fx(y)
                                ][r]
                         )
    
        in Table.SelectRows(f,each Date.DayOfWeek([n],Day.Monday)<5){0}[r]
暂无评论~~
  • 请务必阅读并严格遵守《社区管理规范与使用说明》
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 发送表情,可用的 Emoji 见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板粘贴上传, 格式限制 - jpg, png, gif
  • 不支持上传附件,请尽可能用文字和图片将问题描述清楚,如实在需要上传附件,可上传到 共享网盘 后分享链接
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter