【问题标题】:How do I search and update most recent record in Access VBA如何在 Access VBA 中搜索和更新最新记录
【发布时间】:2018-08-03 12:29:49
【问题描述】:

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

我该怎么做?

【问题讨论】:

  • 您能提供一些示例数据并期待结果吗?

标签: ms-access vba


【解决方案1】:

如果没有样本数据,很难给出建议,但从概念上讲,大致如下:

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

【讨论】:

    【解决方案2】:

    使用DMax函数

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

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

    上述函数将从 tblLaptop 表中获取最新记录 (ID),序列号为 ABCDE。


    更新日期的程序

    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
    

    【讨论】:

      猜你喜欢
      • 2021-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-27
      • 2016-12-30
      • 1970-01-01
      相关资源
      最近更新 更多