Visual Basic子将多个表附加到一个表

时间:2017-07-26 10:56:47

标签: vba ms-access

我是Visual Basic的新手,所以我在尝试将数据库中的多个表附加到单个数据库时遇到了一些麻烦。我正在处理的数据库有一个中央表,列出了一台非常大而复杂的机器的所有维护任务(总共约450个任务)。然后,一系列联合查询为机器的每个子系统生成工作订单,将当天需要完成的任务与前几天的过期任务相结合。由于我无法更新这些联合查询中的数据,因此它们会附加到一系列工作日志表中,以便工作人员可以使用表单输入数据(完成日期和时间,完成任务的人员等)。 我想要做的是将所有这些表附加到'Archive'表中(这是确定过期任务的方式),因为我需要能够编辑此表,如果有必要,联合查询不是理想的解决方案,因为我已经看到了类似问题的建议。因此,我尝试使用visual basic子来运行SQL代码,将所有表附加到“Archive”表中。 我有一个使用删除查询

工作日志的重置代码
    Public Sub DlteAll()
    Dim T As TableDef

    For Each T In CurrentDb.TableDefs
      If T.Name Like "*_WorkLog" Then
        DoCmd.RunSQL ("DELETE * FROM " & T.Name)
      End If
    Next T

    End Sub

哪个工作正常,所以我尝试使用此问题vba access append multiple tables into one中的一些代码来调整它以尝试获取代码以将所有工作日志表附加到存档中(目的是仅运行此操作命令按钮)就这样

    Public Sub ArchvAll()
    Dim T As TableDef

     For Each T In CurrentDb.TableDefs
      If T.Name Like "*_WorkLog" Then
        DoCmd.RunSQL ("INSERT INTO " & "Archive" & "SELECT * " & "FROM " & T.Name)
      End If
    Next T

    End Sub

但我似乎无法正确使用这种语法。任何帮助将不胜感激。

0 个答案:

没有答案