I changed your code a little. Try this:
What does the msgbox display?
Code:
Private Function IsEditable() As Integer
'if (this is a earlier Rev than last) then don't let users change it.
Dim dbsCurrent As DAO.Database
Dim rstTmp As DAO.Recordset
Dim strTmpID As String
Dim isRev As Boolean
Set dbsCurrent = CurrentDb
isRev = False 'initalize boolean
IsEditable = True 'set default return value
strTmpID = Me!RequestforQuotesID
MsgBox strTmpID
If (Mid(strTmpID, Len(strTmpID) - 1, 1) = "^") Then
strTmpID = Left(strTmpID, Len(strTmpID) - 2)
isRev = True
End If
Set rstTmp = dbsCurrent.OpenRecordset("SELECT requestforquotesID " _
& "FROM [request for quotes] " _
& "WHERE requestforquotesID = """ & strTmpID & """ " _
& "OR requestforquotesID LIKE """ & strTmpID & "^*"" " _
& "ORDER BY requestforquotesID;")
If (rstTmp.RecordCount > 0) Then
rstTmp.MoveLast
If (Me!RequestforQuotesID <> rstTmp!RequestforQuotesID) Then
IsEditable = False
' Else
' IsEditable = True
End If
' Else
' IsEditable = True
End If '(rstTmp.RecordCount > 0)
rstTmp.Close
Set rstTmp = Nothing
' didn't open it, so don't close it
'dbsCurrent.Close
Set dbsCurrent = Nothing
End Function