Ms access 如何使事件条目在连续几天内重复?

Ms access 如何使事件条目在连续几天内重复?,ms-access,Ms Access,我是一个全新的接触者,尝试着“动态学习”。我用的是2003版 我有一个数据库来记录员工病假TBL是tblLeaveEvent、tblEmployeeDetails、tblLeaveType 我有一张记录休假的表格,所有员工的详细信息都通过查询填入表格中。 我从日历中选择休假开始日期,从下拉列表中选择休假类型,从列表中选择休假持续时间0-5 我的问题是,如果有人在周四打电话请病假,并说他们将离开3个工作日,我的表格会将其记录为周四的3天假期 如何让db记录周四的1天假期、周五的1天假期和周一的1天

我是一个全新的接触者,尝试着“动态学习”。我用的是2003版

我有一个数据库来记录员工病假TBL是tblLeaveEvent、tblEmployeeDetails、tblLeaveType

我有一张记录休假的表格,所有员工的详细信息都通过查询填入表格中。 我从日历中选择休假开始日期,从下拉列表中选择休假类型,从列表中选择休假持续时间0-5

我的问题是,如果有人在周四打电话请病假,并说他们将离开3个工作日,我的表格会将其记录为周四的3天假期

如何让db记录周四的1天假期、周五的1天假期和周一的1天假期

我是否需要更改设计并选择结束日期而不是持续天数? 如果我确实从日历中选择了结束日期,我如何忽略w/结束

希望我的问题有一个非常简单的解决方案。 Thnx,
David

对于几乎所有依赖日期的数据库,您自己的日历表是一个方便的补充。它应该包含每个日期的一行和一些额外的字段,以指示工作日等。这不仅可以解决周末问题,还可以解决公共假日问题。设置3个工作日很容易,只需查找日历表即可

日历表

CalDate     Workday
04/09/2012      -1
05/09/2012      -1
06/09/2012      -1
07/09/2012       0
08/09/2012       0
09/09/2012      -1
10/09/2012      -1
粗略地

Private Sub NoDays_AfterUpdate()
Dim rs As Recordset
Dim db As Database

    Set db = CurrentDb

    If Not IsNull(Me.Start) Then
        dteDate = DateAdd("d", Me.NoDays, Me.Start)
        sSQL = "SELECT TOP 1 c.CalDate FROM Calendar c " _
             & "WHERE c.CalDate >#" _
             & Format(dteDate, "yyyy/mm/dd") _
             & "# And c.WorkDay = True"
        Set rs = db.OpenRecordset(sSQL)

        If rs.EOF() Then
            MsgBox "Please perform calendar maintenance"
        Else
            Me.Return = rs!CalDate
        End If
    Else
        MsgBox "Please enter start date"
    End If

End Sub

谢谢Remou你是说我应该添加一个名为calendar的新表吗?我不明白这是怎么解决我的问题的。你能详细说明一下吗。非常感谢。