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群 (群號:150401543)       Access源碼網店

                        常見問答:

                        技術分類:

                        相關資源:

                        專欄作家

                        關于我們 | 服務條款 | 在線投稿 | 友情鏈接 | 網站統計 | 網站幫助