How to bind a form to an SQL statement in microsoft access

左心房为你撑大大i 提交于 2019-12-12 01:44:26

问题


**Edit

Hello Everyone I am tryng to include an SQL statement in to my vba so that I can easily sort through data and filter. So I have found way to include SQL in to my VBA but I get an error that says "The RunSQL action requires a SQL statement" but clearly the SQL statement is within the strSQL variable.

Private Sub buttonNot_Click()


Dim strSQL As String

strSQL = "SELECT Table1.[FirstNam], Table1.[LastNam]" & _
"FROM Table1 " & _
"WHERE ((([FirstNam]) <> 'Jamie') AND (([LastNam]) <> 'Cartman'));"

DoCmd.RunSQL strSQL

Me.Filter = ""
Me.Filter = "FirstNam<>'Jamie' AND LastNam<>'Cartman'"

End Sub

回答1:


me.recordsource = {SQL string}

Make sure you turn the filter on after appending the query string.




回答2:


You can't run a SELECT query from the DoCmd.RunSQL query, that can only be used for Action or Data Definition queries (INSERT INTO, UPDATE, CREATE, etc.).

Microsoft Dev Center Docs on DoCmd.RunSQL (I know, I included a link, shame on me) :o

I really like @ClassyBear 's answer. That line of code is equivalent to going to the Property Sheet of the Form in design view and under Data, changing the Record Source Property. There you can either choose a table/query or click on the ... and create one in the query designer.




回答3:


Private Sub buttonNot_Click()


Dim strSQL As String

strSQL = "SELECT Table1.[FirstNam], Table1.[LastNam]" & _
"FROM Table1 " & _
"WHERE ((([FirstNam]) <> 'Jamie') AND (([LastNam]) <> 'Cartman'));"


Me.RecordSource = strSQL

'DoCmd.RunSQL strSQL

'Me.Filter = ""
'Me.Filter = "FirstNam<>'Jamie' AND LastNam<>'Cartman'"

End Sub


来源:https://stackoverflow.com/questions/23696371/how-to-bind-a-form-to-an-sql-statement-in-microsoft-access

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!