Hallo,
Ich wollte mit der FindMethode für ADO-Recordsets einen Datensatz aus der Datenbank suchen. Leider scheint es einen Fehler im Makro zu geben weshalb er den Datensatz nicht findet.
Hier der Code:
Sub AccessConnect()
Dim rs As ADODB.Recordset
Dim strName as String
Set rs = New ADODB.Recordset
rs.ActiveConnection = „Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ _
& C:\Project\Database.mdb & „ersist Security Info=False“
rs.CursorType = adOpenDynamic
rs.LockType = adLockOptimistic
rs.Open „select * FROM Personal“
strName = „Hans“
rs.Find „[Nachname] = „““ & strName & „“""
MsgBox rs.Fields(„Nachname“).Value
Exit Sub
Ich vermute das Problem liegt in der Anweisung der Findmethode:
rs.Find „[Nachname] = „““ & strName & „“""
wenn ich den Code allerdings so schreibe:
rs.Find "[Nachname] = " & strName
wird eine Fehlermeldung ausgegeben (Run-time error ‚3001‘), da strName Text also ein String ist.
Der Eintrag wird erst gefunden wenn ich ihn in der Datenbank in Anführungszeichen setze.
Die Frage ist nun wie ich einen Datensatz finden kann ohne das sie in Anführungszeichen stehen müssen.
Danke im vorraus