根据经过某个日期的另一个日期字段更新文本字段的值

时间:2018-12-13 20:41:52

标签: vba access-vba auto-update ms-access-2016

对于我的Access数据库,我有一个包含两个字段的单一表-奖励状态和建议的到期日期。我希望在建议的截止日期过去之后,奖励状态更改为“待定”。

当前,我正在编写VBA,以便在满足条件时更新字段。

Function AwardUpdate()

    Dim rstInput As DAO.Recordset
    Set rstInput = CurrentDb.OpenRecordset("TestInput")

    With rstInput
        Do Until .EOF
            .Edit
            If .Fields(19) < Date And .Fields(29) = "Pre-Submission" Then
                .Fields(29) = "Pending"
                .MoveNext
            Else
                .MoveNext
            End If
        Loop
    End With

End Function

但是我似乎无法获得检查提议的到期日期是否小于当前日期的条件。

是否有更好的方法来实现这一目标?

1 个答案:

答案 0 :(得分:0)

这应该有效-仅在需要时进行编辑:

   Do Until .EOF
       If .Fields(19).Value < Date And .Fields(29).Value = "Pre-Submission" Then
           .Edit
               .Fields(29).Value = "Pending"
           .Update
       End If
       .MoveNext
   Loop