I have a form in which on a change it looks for a matching record in the same table. I created a query with the same parameters (the parameters are the same values as the variants I place in my SELECT statment). The query returns a record but the VBA does not. I've gone through every possible scenario I can think of and have no idea why this is not working. PLEASE HELP!
Below is my code:
Dim strDataType As Variant
Dim strVALVE_NO As Variant
Dim strLOCATION As Variant
Dim strSYSTEM As Variant
Dim strSERVICE As Variant
Dim rstCompare As DAO.Recordset
Set dbsname = CurrentDb
strDataType = Trim(Form_CompareFullSubform.DataType)
strVALVE_NO = Trim(Form_CompareFullSubform.VALVE_NO)
strSYSTEM = Trim(Form_CompareFullSubform.SYSTEM)
strLOCATION = Trim(Form_CompareFullSubform.Location)
strSERVICE = Trim(Form_CompareFullSubform.SERVICE)
Set rstCompare = CurrentDb.OpenRecordset(Name:="SELECT * FROM CompareData WHERE [DataType]<> '" & strDataType & "' AND [VALVE_NO] = '" & strVALVE_NO & "' AND [SYSTEM] = '" & strSYSTEM & "' AND [LOCATION] = '" & strLOCATION & "' AND [SERVICE] = '" & strSERVICE & "'")

Below is my code:
Dim strDataType As Variant
Dim strVALVE_NO As Variant
Dim strLOCATION As Variant
Dim strSYSTEM As Variant
Dim strSERVICE As Variant
Dim rstCompare As DAO.Recordset
Set dbsname = CurrentDb
strDataType = Trim(Form_CompareFullSubform.DataType)
strVALVE_NO = Trim(Form_CompareFullSubform.VALVE_NO)
strSYSTEM = Trim(Form_CompareFullSubform.SYSTEM)
strLOCATION = Trim(Form_CompareFullSubform.Location)
strSERVICE = Trim(Form_CompareFullSubform.SERVICE)
Set rstCompare = CurrentDb.OpenRecordset(Name:="SELECT * FROM CompareData WHERE [DataType]<> '" & strDataType & "' AND [VALVE_NO] = '" & strVALVE_NO & "' AND [SYSTEM] = '" & strSYSTEM & "' AND [LOCATION] = '" & strLOCATION & "' AND [SERVICE] = '" & strSERVICE & "'")