如何在Access VBA中搜索和更新最新记录

时间:2018-08-02 20:41:05

标签: ms-access access-vba

我有一个笔记本电脑数据库,其中包含序列号和返回/部署的日期,我想记录部署和返回的日期。我有一个部署表单,该表单将部署日期记录到表中,还有一个返回表单,该表单应在该表中找到给定序列的最新记录,然后将表单返回的日期插入该序列的记录条目中。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

没有样本数据很难建议,但从概念上讲,类似以下内容:

UPDATE 
    DeploymentTable
SET 
    DeploymentTable.ReturnDate = Date()
WHERE 
    DeploymentTable.Serial = 'ABC123' AND
    DeploymentTable.DeploymentDate = DMax("DeploymentDate","DeploymentTable","Serial = 'ABC123'")

答案 1 :(得分:0)

使用 DMax 功能

  

DMax函数,用于确定指定记录集(域)中的最大值。
语法-DMax(** Expr,** Domain,** Criteria **)

Dmax("ID","tblLaptop", "SerialNO='ABCDE'")

上面的函数将从tblLaptop表中获取序列号为ABCDE的最新记录(ID


更新日期的步骤

Sub UpdateDate()

 Dim laptopID As Long
 laptopID = DMax("ID", "tblLaptop", "SerialNO='b'")


 DoCmd.SetWarnings False
 DoCmd.RunSQL "Update tblLaptop set ReturnedDate=#" & Date & "# where ID=" & laptopID
 DoCmd.SetWarnings True
End Sub