MS ACCESS vba select
我在MS Access中有一个表,我试图选择数据。该表中有一个用户标识,所以我只是试图选择具有特定用户标识的信息。我正在做的事情是将用户ID传递给访问中的窗体,所以我希望能够在查询中引用frm字段。当我在下面运行这个代码时,它告诉我这些参数太少了。MS ACCESS vba select
dim rs1 as DAO.recordset
strSQL = "Select * from [dbo_tempDetail] where [userID] = [Forms]![frmUserInfo]![txtCLIENTID];"
Set rs1 = CurrentDb.OpenRecordset(strSQL, , dbOpenDynamic)
rCount = rs1.RecordCount
这里有什么问题
EDIT 2
strSQL = "Select * from [dbo_tempDetail] where userID = '" & [Forms]![frmUserInfo]![txtClientID] & "' "
Set rs1 = CurrentDb.OpenRecordset(strSQL, , dbOpenDynamic)
rCount = rs1.RecordCount
SELECT语句必须是使用表格值(S)一个连接字符串。 VBA可能知道什么是[Forms]![frmUserInfo]![txtCLIENTID]
,但是SELECT不。
strSQL = "Select * from [dbo_tempDetail] where [userID] = " & _
[Forms]![frmUserInfo]![txtCLIENTID] & ";"
'might have to quote the txtCLIENTID value
strSQL = "Select * from [dbo_tempDetail] where [userID] = '" & _
[Forms]![frmUserInfo]![txtCLIENTID] & "';"
我把它放在引号中,但它给了我错误3464“标准表达式中的数据类型不匹配”您可以在编辑2中看到我的查询是什么样的。谢谢 – FatBoySlim7
您是否尝试过没有引号?无论VBA认为txtCLIENTID是字符串还是int。重要的是,字符串在SQL SELECT中被引用,而ints不会。 – Jeeped
它正在使用“”查询的单个实例 – FatBoySlim7
的[基于表单字段的查询条件](http://*.com/questions/21063326/query-criteria-based-on-form-field) – Duston
数字(int)的我是可能的复制从SQL服务器拉到Access(与链接管理器),但我工作出Access – FatBoySlim7
谢谢,发布为答案@ hansup对不起,Jeeped第一个得到它的权利! – FatBoySlim7