0 ms-access vba runtime ms-access-2007
我不确定这是否是发布此问题的正确网站,但在这里......
在Access 2007中,我收到错误"运行时错误'3061':参数太少.预期1"在这段VBA代码上:
Private Sub btnCheck_Click()
Dim rs As Recordset
Dim db As Database
Dim id As String
Dim query As String
MsgBox ("one")
Set db = CurrentDb()
id = Me.UniqueID.Value
query = "SELECT [Unique_ID] from tblPatients WHERE [Unique_ID] =" & id
MsgBox (id)
Set rs = db.OpenRecordset(query) <<<<<HIGHLIGHTED LINE
If IsNull(rs) Then
Me.lblCheck.Caption = "NEW"
Else
Me.lblCheck.Caption = "EXISTS"
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
数据源是表,而不是查询.任何帮助将非常感激!
Unique_ID您的表中没有命名的字段tblPatients.如果您发布了所有代码,那么这是唯一可能的解释.
编辑:您的评论证实了我的怀疑:
我只是三重检查:P表名:tblPatients列名:唯一ID
您在代码中添加了一个下划线,该下划线在您的字段名称中不存在.你使用方括号是正确的,但正确的代码应该是:
query = "SELECT [Unique ID] from tblPatients WHERE [Unique ID] =" & id
Run Code Online (Sandbox Code Playgroud)
请注意删除的下划线.或者(和我最好说,如果你在设计的早期阶段),你可以在表中的字段重命名为无论是Unique_ID或UniqueID,并保存自己的麻烦的一个很好的协议.
| 归档时间: |
|
| 查看次数: |
803 次 |
| 最近记录: |