我是Access和VBA的新成员,正在尝试探索。我有一个表单,其中有两个文本框(txtAc和txtFirstName),我希望根据基于txtAc参数的SQL查询在txtFirstName中填充数据。我试图通过记录集实现相同的目的。请在下面查看我的代码:-
Private Sub txtCust_Click()
Dim cnn As ADODB.Connection
Dim strSQL As String
Dim rst As ADODB.Recordset
Set cnn = CurrentProject.Connection
Dim i As Integer
Dim Records As Integer
Dim AcN As Double
Dim AcNo As Double
AcN = Forms!dfrmAccount!txtAc.Value
AcN = AcNo
strSQL = "SELECT dtblCustomer.[FIRST_N], dtblAccount.[ACCOUNT_NO] FROM
dtblAccount INNER JOIN dtblCustomer ON dtblAccount.[CUSTOMER_ID] =
dtblCustomer.[CUSTOMER_ID] WHERE (((dtblAccount.[ACCOUNT_NO])='AcNo'))"
Set rst = New ADODB.Recordset
rst.CursorLocation = adUseClient
rst.Open strSQL, cnn
Records = rst.RecordCount
Debug.Print rst.RecordCount
For i = 1 To Records
Me.txtFirstName.Value = rst.Fields!FIRST_N
Debug.Print rst.Fields!FIRST_N
rst.MoveNext
Next i
'' Clean up
rst.CLOSE
Set rst = Nothing
End Sub
先谢谢了。请有人帮忙。
答案 0 :(得分:0)
...(((dtblAccount.[ACCOUNT_NO])='AcNo'))"
应该是
...(((dtblAccount.[ACCOUNT_NO])=" & AcNo & "))"
假设ACCOUNT_NO是一个数字字段。
您也不会填充AcNo-默认值为零。