Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

【access自定义函数】统计某一个时间段内有多少个星期几\自定义一段时间有几个星期X的函数示例

时 间:2012-02-28 08:22:02
作 者:叶海峰   ID:31  城市:广州
摘 要:Accessoft-统计某一个时间段内有多少个星期几,自定义一段时间有几个星期X的函数示例
正 文:

      网友冯先生问:有高手制作一个自定义一段时间有几个星期X的函数吗?

针对此贴,做了个自定义模块函数:

'=================================================
'-函数名称:         SumDay
'-功能描述:         将某一个时间段内日期统计有多少个星期几
'-输入参数:         日期型数值 如第一个控件输入 2012-2-1  第二个控件输入 2012-2-29
'-返回参数:         返回日期型数值为数字型型 即1 2 3 这种
'-使用示例1:        =SumDay([DateBegin],[DateEnd],3)    '返某时间段内星期三有:3
'-使用示例2:        =SumDay(#2/1/2012#, #2/29/2012#, 3) '返2012年2月1日至2012年2月29日内星期三有:5
'-作    者:         叶海峰
'-创建日期;         2012-2-27 16:18:00
'=================================================

Public Function SumDay(DateBegin As Date, DateEnd As Date, DayOfWeek As Byte) As Integer
    Dim datecount As Integer, count As Integer, i As Integer
    If DateBegin > DateEnd Then MsgBox "开始日期不能大于结束日期": Exit Function
    datecount = DateEnd - DateBegin
    For i = 0 To datecount
        If Weekday(DateBegin + i, vbMonday) = DayOfWeek Then count = count + 1  '每周从星期1开始计算
    Next
    SumDay = count
End Function


'测试示例,按F5运行看效果
Sub a()
    '3代表星期三,合起来意思就是某段时间内有几个星期三; 改成4就是有多少个星期四,以此类推
    MsgBox SumDay(#2/1/2012#, #2/29/2012#, 3)
End Sub 

 

示例如下图:

附件:

点击下载此附件



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助