Aus verschiedenen Angaben im Archiv habe ich mir folgendes Makro zusammengebastelt.
DAs Makro läuft durch bis zum Punkt rs.update
Dann tritt der folgender Fehler auf
Laufzeitfehler '-2147467259(80004005)';
Fehler bei einer abfragebasierten Aktualisierung, da die zu aktualisierende Zeile nicht gefunden werden konnte.
Kann mir jemand sagen, was ich falsch gemacht habe. (Bitte mit richtigem Code, da ich von ADODB.Connection keine Ahnung habe.)
Vielen Dank schon mal an denjenigen, der mir helfen will.
Peter Welbers
Dim treiber As String, sqlString As String
'Definition des Recordset
Dim Con As ADODB.Connection
Dim RS As ADODB.Recordset
Public Sub umsp()
treiber = "Visual FoxPro Database"
'Datenbank Öffnen
Set Con = New ADODB.Connection
With Con
.Provider = "MSDASQL; DSN=" & treiber & ";"
.Open
End With
'Auszuwählende Datenbank
sqlString = "select * from V2AD1001"
Set RS = New ADODB.Recordset
RS.Open sqlString, Con, adOpenKeyset, adLockOptimistic
RS.MoveFirst
'For i = 2 To ActiveSheet.UsedRange.Rows.Count
For i = 2 To 10
If RS.Fields("SYS_ANLAGE").Value "01.12.2007" Then RS.Fields("SYS_ANLAGE").Value = Date
Debug.Print RS.Fields("Nummer"), RS.Fields("SYS_ANLAGE")
RS.Update
RS.MoveNext
If RS.EOF Then Exit For
Next i
RS.Close
Set RS = Nothing
Con.Close
Set Con = Nothing
End Sub