Refer this link.. It is dealing with the situation you are asking for.. I all also put an updated solution once I get the code working
http://support.microsoft.com/kb/113955
Here is the code
First write two small helper functions to replace the single quote and double quote with chr(39) and chr(34)
Function DoParseQuote(ByVal sString As String) As String
Dim sTemp As String
sTemp = Replace(sString, "'", "' & Chr(39) & '")
DoParseQuote = sTemp
End Function
Function DoParseDoubleQuote(ByVal sString As String) As String
Dim sTemp As String
sTemp = Replace(sString, """", "' & Chr(34) & '")
DoParseDoubleQuote = sTemp
End Function
Then call the function from search
str = "EmpName = '" & DoParseQuote("Don't") & "'"
str = "EmpName = '" & DoParseDoubleQuote("Milka ""speedy"" singh") & "'"
rs.FindFirst str