Office中国论坛/Access中国论坛

标题: 请问如何计算排除周六,周日的时间差? [打印本页]

作者: ronaldxiexiea    时间: 2006-8-10 18:32
标题: 请问如何计算排除周六,周日的时间差?
要计算2个日期之间的时间差,(以天为单位),但是要排除周末(周六,周日),请问哪位大虾写过这样的函数?
作者: andymark    时间: 2006-8-10 19:09
有现成的涵数

Function Work_Days(BegDate As Variant, EndDate As Variant) As Integer
用法: Work_Days(#2006-7-1#,#2006-7-31#)
Dim WholeWeeks As Variant
Dim DateCnt As Variant
Dim EndDays As Integer

    BegDate = DateValue(BegDate)

    EndDate = DateValue(EndDate)
        WholeWeeks = DateDiff("w", BegDate, EndDate)
        DateCnt = DateAdd("ww", WholeWeeks, BegDate)
        EndDays = 0
        Do While DateCnt < EndDate
            If Format(DateCnt, "ddd") <> "Sun" And _
                          Format(DateCnt, "ddd") <> "Sat" Then
                    EndDays = EndDays + 1
            End If
            DateCnt = DateAdd("d", 1, DateCnt)
        Loop
        Work_Days = WholeWeeks * 5 + EndDays
End Function

[此贴子已经被作者于2006-8-10 11:35:04编辑过]


作者: huzaixin    时间: 2006-8-10 19:27
具体怎么用呢?
作者: huzaixin    时间: 2006-8-10 19:28
是自定义函数吗?从来还没有接触过呢.
作者: ronaldxiexiea    时间: 2006-8-10 20:35
多谢
作者: 白河寒秋    时间: 2008-6-25 01:15
已成功使用一年了,这个函数的返回值要减一才是正确 的
作者: wwwwa    时间: 2008-6-25 09:14
不错,学习
作者: hayhay    时间: 2008-6-29 19:45
不错,学习 学习




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3