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

月底日期的获得

时 间:2017-08-20 11:42:21
作 者:半夜罗   ID:36948  城市:成都
摘 要:月底日期的获得
正 文:

关于《运用Access实现降本增效》中,报表选择有一段代码,获取月底日期,当选择为12月时会出错,将代码修改为:

    Dim StartDate As Date
    Dim EndDate As Date
    Dim LastDate As Date
    Dim strSQL As String
    
    If IsNull(Me.txt销售日期) Then
        MsgBox "请输入报表日期", vbCritical, "提示"
        Me.txt销售日期.SetFocus
        Exit Sub
    End If
    EndDate = Me.txt销售日期
    ' StartDate = CDate(Year(EndDate) & "-" & Month(EndDate) & "-" & "1")'原代码,12月时会出错
    'StartDate = CDate(Year(Me.txt销售日期) & "-" & Month(Me.txt销售日期) & "-" & "1") '修改后的,12月份不会出错
    StartDate = CDate(Year(EndDate) & "-" & Month(EndDate) & "-" & "1")    '修改后的,12月份不会出错
    ' LastDate = CDate(Year(EndDate) & "-" & Month(EndDate) + 1 & "-" & "1") - 1'原代码,12月时会出错
    'LastDate = DateAdd("m", 1, Format(Me.txt销售日期, "yyyy/mm/\1")) - 1 '修改后的,12月份不会出错
    LastDate = DateAdd("m", 1, Format(EndDate, "yyyy/mm/\1")) - 1    '修改后的,12月份不会出错
    strSQL = "Update tbl参数表 SET 结束日期 = #" & EndDate & "#, 开始日期 = #" & StartDate & "#, 月底日期 = #" & LastDate & "#"
    DoCmd.SetWarnings False
    '将 销售的当天日期,月初开始日期,月底结束日期写入 tbl参数表,以供查询作为条件使用
    DoCmd.RunSQL strSQL
    '每次生成报表数据前,对 tbl临时表_销售日报 进行清空
    DoCmd.OpenQuery "qry清空销售日报"
    '生成 本月累计销量的清单(例如按客户)
    DoCmd.OpenQuery "qry本月累计销量"
    '将 清单追加到 tbl临时表_销售日报 中
    DoCmd.OpenQuery "qry追加销量累计数"
    '生成当天的销售量(按客户)
    DoCmd.OpenQuery "qry本日销量"
    '对 tbl临时表_销售日报 中的本日销量进行更新
    DoCmd.OpenQuery "qry更新当日销量"
    '生成本月的订单量(按客户)
    DoCmd.OpenQuery "qry月订单量"
    '对 tbl临时表_销售日报 中的订单量进行更新
    DoCmd.OpenQuery "qry更新月订单量"
    DoCmd.SetWarnings True
    DoCmd.OpenReport "rpt销售日报", acViewReport
这样就避免了12月时的出错。



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

常见问答:

技术分类:

相关资源:

专栏作家

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