等效于 Excel 的 NETWORKDAYS 函数与 Jet ADO

Lun*_*tik 4 microsoft-access jetsql microsoft-excel

通过 ADO 连接到 Jet 数据库时,是否可以复制 Excel 的 NETWORKDAYS?

小智 5

首先假设我们知道开始和结束都是工作日,我认为这有效:

([DateEnd]-([DateStart]+(Weekday([DateEnd])-Weekday([DateStart]))))/7*5+(Weekday([DateEnd])-Weekday([DateStart]))+1
Run Code Online (Sandbox Code Playgroud)
  • 计算日期和时间之间的周数乘以 5。
  • 添加工作日的差异
  • 添加一个以包括开始和结束

如果您不知道两者都是工作日,则需要更正。我认为这是正确的:

([DateEnd]-([DateStart]+(Weekday([DateEnd])-Weekday([DateStart]))))/7*5+(Weekday([DateEnd])-Weekday([DateStart]))+1+IIf(Weekday([DateEnd])=7,-1,0)+IIf(Weekday([DateStart])=1,-1,0)
Run Code Online (Sandbox Code Playgroud)

我对 Excel 进行了测试,它似乎给出了正确的答案