【发布时间】:2015-11-20 13:41:39
【问题描述】:
我对 VBA 完全陌生。我被告知通过使用表单和保存按钮将记录添加到表中,并给出了一些非常基本的说明。虽然我通过内联查询实现了这一点,但有人告诉我要遵循一些严格的方法,例如使用 QueryDef/QueryDefs 和 .Parameters。
到目前为止,我正在尝试一个非常基本的项目,只是为了掌握概念,但我无法将任何记录添加到空表中。如果表不为空(我手动输入一条记录),每当我单击保存按钮以保存较新的记录时,添加的记录数会随着每个实例增加一倍。比如我第一次保存时添加了1条记录,第二次添加了相同类型的2条记录,第三次添加了4条,以此类推。
table(tbl_test) 有 2 个字段 --> ID(primary key), Source(Long Text) and Reg No (Number).
查询(qry_test)是使用附加功能进行的,我被告知要添加使代码如下所示的表达式 -
INSERT INTO tbl_test ( Source, [Reg No] )
SELECT [strSource] AS Expr1, [lngRegNo] AS Expr2
FROM tbl_test;
表单有 2 个字段用于 Source(txt_Source) 和 Reg No(txt_RegNo),它们有空白记录源(未绑定)。保存按钮具有以下事件过程 -
Private Sub btn_save_Click()
Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("qry_test")
qdf.Parameters("strSource") = Me.txt_Source
qdf.Parameters("lngRegNo") = Me.txt_RegNo
qdf.Execute
End Sub
我对 VBA 的了解为零,很乐意接受任何帮助。如果我能得到任何类型的源代码来解释有关从表单保存记录并使用这些查询定义、参数和记录集的东西编辑它们的所有细节,那就太好了。
【问题讨论】: