Forms 如何在Access中将查询调用到表单中?(ms接入)

Forms 如何在Access中将查询调用到表单中?(ms接入),forms,ms-access,Forms,Ms Access,我有一个查询,你输入一个数字,然后得到一个结果(它计算出一些东西) 现在,我有一个有两个输入的表单。在一个输入中键入一个数字。键入数字后,我希望使用输入值作为参数调用我的查询,然后从查询结果到第二个输入生成数字。下面是一个VBA示例: Private Sub Refresh_Button_Click() Dim strSQL as String Dim inputbox1 as String Dim myR As Recordset 'set the input1 as a string i

我有一个查询,你输入一个数字,然后得到一个结果(它计算出一些东西)

现在,我有一个有两个输入的表单。在一个输入中键入一个数字。键入数字后,我希望使用输入值作为参数调用我的查询,然后从查询结果到第二个输入生成数字。

下面是一个VBA示例:

Private Sub Refresh_Button_Click()

Dim strSQL as String
Dim inputbox1 as String
Dim myR As Recordset

'set the input1 as a string
inputbox1 = Me.input_box_1

'this select statement creates a SQL string
strSQL = "Select whatever from table_name where field = '" & inputbox1 & "'"

'this recordset pulls your SQL statement so you can get your fields
Set myR = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)

'this gives the value of your second input box
Me.input_box_2 = myR!field_you_want_to_appear

Me.Refresh

Set myR = Nothing

End Sub

请看这篇文章:您需要在
SELECT
语句中使用第一个输入作为变量。@TKEyi60问题是如何调用查询并将输出放入第二个输入您使用
SELECT
语句调用查询。然后添加一个提交按钮。然后,当它
打开时,单击
触发,您可以使用
Me.Refresh
刷新页面。请确保将刷新放在最后一次尝试查看Select语句时,它告诉我“运行时错误'3061',当我单击“调试”时,它会标记这一行:
Set myR=CurrentDb.OpenRecordset(strSQL,dbOpenDynaset)
我修复了它。这是因为
,但现在我遇到了更多问题。它说:“此集合中找不到项”,它标记了这一行:
Me.input\u box\u 2=myR!field\u you\u希望\u出现
。当然我更改了它,但它不是英文的,所以在这里看起来乱七八糟。我也修改了它,列中有空格,所以我将它放入
[]
。谢谢,现在它可以工作了!!!没问题,很高兴这有帮助。