That is a common problem, SQL uses the apsotrophe to surround strings.
So for example if your have a query like this
"SELECT * FROM query1 " & " WHERE surname = '" & txtsurname.Text & "'"
It becomes SELECT * FROM query1 WHERE surname='o'hare'
SQL doesn't understand the extra hare' and it becomes an error.
Either remove the single quotations or surround your strings with # instead of ' (Of course the same problem will occur if you have # in your string)
http://www.geocities.com/scirocco_ha/DataControl.htm