Zugriff auf Abfrage mit Recordset

09/09/2007 - 00:46 von Günter Gerold | Report spam
Hallo,

ein Formular basiert auf einer Abfrage.
In diesem Formular möchte ich nun mit einem Recordset auf diese Abfrage
zugreifen um alle Datensàtze zu àndern.

Private Sub Befehl18_Click()
On Error GoTo errorhandler
Dim db As DAO.Database
Dim rs As DAO.Recordset

Set db = CurrentDb
Set rs = db.OpenRecordset("abfBeziehung", dbOpenDynaset)

rs.MoveFirst
Do Until rs.EOF
'rs.Edit
'rs![rohware] = False
'rs![Mutterartikel] = Null
'rs.Update
rs.MoveNext
Loop

rs.Close
Set rs = Nothing

errorhandler:
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub

jetzt kommt aber bei:

Set rs = db.OpenRecordset("abfBeziehung", dbOpenDynaset)

die Fehlermeldung:

Laufzeitfehler 3061: 2 Parameter wurden erwartet...

hat mir jemand einen Tipp ?
Günter Gerold
 

Lesen sie die antworten

#1 Thomas Möller
09/09/2007 - 09:23 | Warnen spam
Hallo Günter

Günter Gerold schrieb:
ein Formular basiert auf einer Abfrage.
In diesem Formular möchte ich nun mit einem Recordset auf diese
Abfrage zugreifen um alle Datensàtze zu àndern.

jetzt kommt aber bei:

Set rs = db.OpenRecordset("abfBeziehung", dbOpenDynaset)

die Fehlermeldung:

Laufzeitfehler 3061: 2 Parameter wurden erwartet...

hat mir jemand einen Tipp ?



schau mal bei www.donkarl.com in die FAQ 6.4 und / oder 6.16.

Alternativ könntest Du die Änderung an Deinen Daten auch per
Aktionsabfrage vornehmen lassen. Bei größeren Datenmengen sollte das
IMHO schneller gehen:

Dim strSQL As String

strSQL = "Update DeineTabelle SET " & _
"DeinFeld = DeinWert " & _
"WHERE DeinFeld2 = DeineBedingung"

CurrentDb.Execute strSQL, dbFailOnError



HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen