是否有办法通过ByRef函数更新记录集中的字段?我觉得这个例子应该工作,但是。[Field1]没有得到更新的UpdateTable子。这可以做到,或者我必须先传递字段到一个变量?
Private Sub DeclareTable()
Dim tbl As Recordset
Set tbl = CurrentDb.OpenRecordset("Table1")
tbl.MoveFirst
tbl.Edit
UpdateTable tbl![field1], 5, 2
tbl.Update
End Sub
Private Sub UpdateTable(ByRef tblField, X, Y)
tblField = X * Y
End Sub
您可能需要更具体地使用DAO:
Private Sub DeclareTable()
Dim tbl As DAO.Recordset
Set tbl = CurrentDb.OpenRecordset("Table1")
tbl.MoveFirst
tbl.Edit
UpdateTable tbl![Field1], 5, 2
tbl.Update
tbl.Close
End Sub
Private Sub UpdateTable( _
ByVal tblField As DAO.Field, _
ByVal X As Long, _
ByVal Y As Long)
tblField.Value = X * Y
End Sub
这里运行得很好。