显示相同ID的所有记录

时间:2017-01-01 18:52:10

标签: database ms-access access-vba

我正在开发一个Access项目,我需要帮助......

我有2个表,第一个名为tblHoliday,其中包含字段(ID,OfficerID,OffType,From,To)[From]和[To]是日期字段。

第二个表是带有字段的tblService(ID,OfficerID,Date)。 每个表中的[OfficerID]之间存在关系。

每个[OfficerID] 可能在表tblService中有两条或更多的记录, 我设计了一个表格,让tblHoliday进入官员的假期,我的问题是(我需要检查[From]和[To]之间的表tblService中相同[OfficerID]的任何[Date],对于OfficerID在表格tblHoliday中,例如:一名官员要求在2017年1月1日至2017年1月10日期间假期,如果他在2017年1月3日提供服务,将发出消息"该官员有服务2017年1月3日"

我的代码有效,但仅适用于同一个OfficerID

的tblService中的第一条记录
    Dim dtmMyDate As Date   
    dtmMyDate = DLookup("Date", "tblService", "OfficerID = " & Me.OfficerID)

    If dtmMyDate > Me.From And dtmMyDate < Me.To Then
        MsgBox "The Officer has a Service"
    Else
        MsgBox "Done"
    End If

1 个答案:

答案 0 :(得分:0)

创建一个查询:

Select 
    tblService.*
    tblHoliday.*
Where
    tblService.OfficerID = tblHoliday.OfficerID
    And
    tblService.Date Between tblHoliday.From And tblHoliday.To

从中打开记录集或将其分配到列表框,以循环或列出有问题的服务日。