我在Access中有三个表:一个链接到Excel,一个链接到MySQL,一个名为LastQuery的本地表具有单个行和一列。我在一个带有计时器的窗体中使用VBA查询来从Excel表中选择数据并将其插入到MySQL表中。与此同时,我更新了插入到LastQuery的最后一条记录的dtmInsertedTime
(在标题为last
的行中),以便下一次表单计时器打勾时,它将从下一条记录继续并继续,直到它插入到每条记录记录。我的代码很简单,但我收到错误,无法按照我所描述的那样工作。这里是我的代码:从一个链接表插入行到另一个
Private Sub Form_Timer()
CurrentDb.Execute "INSERT INTO tblevent (vchrFacility, intWorkCell, intStn, intEventCode) SELECT vchrFacility, intWorkCell, intStn, intEventCode from excelTblEvent where dtmInsertedTime > LastQuery.Last"
CurrentDb.Execute "UPDATE LastQuery, excelTblEvent SET LastQuery.Last = excelTblEvent.dtmInsertedTime"
End Sub
编辑:
我不能做它没有你们。我的代码不正是我想要它做的,没有任何问题:
Option Compare Database
Private Sub Form_Timer()
CurrentDb.Execute "INSERT INTO tblevent (vchrFacility, intWorkCell, intStn, intEventCode) SELECT vchrFacility, intWorkCell, intStn, intEventCode FROM excelTblEvent WHERE dtmInsertedTime > DLookup('Last', 'LastQuery')"
CurrentDb.Execute "UPDATE LastQuery, excelTblEvent SET LastQuery.Last = excelTblEvent.dtmInsertedTime"
End Sub
您收到哪些错误? –
我每次修改代码时都会收到一个不同的错误。对于上面的代码,我得到了运行时错误3061(参数太少,预期1)。我的研究显示它是由于查询中的一个错误,所以我摆脱了查询的哪个部分,并且出现了运行时错误3155(ODBC - 在链接表上插入失败) – Th1nker