【问题标题】:How do I update a single field of a single record with data from another table with VBA in MS Access如何使用 MS Access 中的 VBA 使用另一个表中的数据更新单个记录的单个字段
【发布时间】:2020-12-01 03:23:23
【问题描述】:

在 MS Access 中,我有一个名为“产品”的表。它包含质量测试参数,以及“Part_No”和“Last_Test_Date”字段。 “Last_Test_Date”字段是特定产品的最后一次测试时间。

我有另一个表格 (Trend001),它使用来自液压试验机的实际测试数据以及正在测试的“Part_No”和当前的“Time_Stamp”实时更新。

我想使用“Trend001”表中的“Time_Stamp”更新正在测试的特定“Part_No”的“Last_Test_Date”。

这样用户就知道上次测试部件的时间。

我在 Stackoverflow 上找到了这个,但我对语言的了解不够,无法将它应用到我的项目中。

Updating existing records and adding new records in table (MS Access VBA)

'''

Public Sub UpdateExistingRecords()
    On Error GoTo ErrTrap
    Dim rs As DAO.Recordset

    Set rs = CurrentDb().OpenRecordset("SELECT * FROM tblTempData", dbOpenSnapshot)
    Set rsCommon = CurrentDb().OpenRecordset("SELECT * FROM tblCommon", dbOpenDynaset)

    Dim idx As Long
    For idx = 1 To rs.RecordCount
        If ExistsInCommon(rs![Item ID]) Then
            If Not Update(rs) Then
                MsgBox "Failed to update.", vbExclamation
                GoTo Leave
            End If

'''

【问题讨论】:

    标签: vba database ms-access timestamp record


    【解决方案1】:

    您不需要 VBA 来进行更新,只需使用 SQL 更新即可。此 SQL 将更新 Trend001 表中存在的 Products 表中的所有部分。

    UPDATE Products INNER JOIN Trend001 ON Products.Part_No = Trend001.Part_No
    SET Products.Last_Test_Date = Trend001.Time_Stamp;
    

    请 - 请记住在运行此更新之前备份您的数据库。一个小错字可能会删除您的数据。

    【讨论】:

      猜你喜欢
      • 2020-09-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多