有没有办法将下面的 Excel 公式转换为 Access 中的查询/标准?
L2 = Date
J2 = Another Date
Z1 = Todays Date
我认为它正在计算两个日期之间的天数,但不确定如何在 Access 查询中执行此操作。
IF((AND((L2<1),(J2>1))),(NETWORKDAYS(J2,$Z$1)-1),0)
有没有办法将下面的 Excel 公式转换为 Access 中的查询/标准?
L2 = Date
J2 = Another Date
Z1 = Todays Date
我认为它正在计算两个日期之间的天数,但不确定如何在 Access 查询中执行此操作。
IF((AND((L2<1),(J2>1))),(NETWORKDAYS(J2,$Z$1)-1),0)
正如您现在可能已经收集到的那样,这个问题并没有真正的意义。NETWORKDAYS
确实计算了两个日期之间的“整个工作日,不包括周末和假日中确定的任何日期”的数量(这里是任何日期J2
,无论是 'Today'/ Z1
),IF
并使该计算取决于AND
函数的结果为 TRUE。如果“日期”在1900 年 1 月 1 日之前且日期在 1900 年 1 月1 日之后,则AND
函数结果为 TRUE (因为对于 Excel 1/1/1900 是涉及日期的日期 [除非有人选择1904 年日期系统])。L2
J2
1
但 Excel 无法识别第 1 天之前的日期,无论是负数还是十进制数。例如,第 1.5 天是 1900 年 1 月 1 日的中午,而在相同的格式中,第 0.5 天显示为 0/1/1900。
因此,从本质上讲,L2
这不是该公式真正使用的日期,因此我相信为什么您的问题还没有答案。但这太长了,无法放在评论中,因此我的回答是:“不。”!
设置对 Excel 的引用。
Option Compare Database
Private Sub Command2_Click()
MsgBox GetNetWorkDays(#1/29/2017#, #2/8/2017#)
End Sub
Function GetNetWorkDays(startDate As Date, endDate As Date) As Integer
GetNetWorkDays = WorksheetFunction.NETWORKDAYS(startDate, endDate)
End Function
将按钮放在表单上,然后单击按钮!
如果您想计算天数之间的天数,则可以使用下面的内置函数“DateDiff”来解决它。Datediff("D",,) 例如。日期差异(“D”,L2,Z1)