Hallo,
ich nochmal
Es sind leider Fehler in der Funktion drin. Hier die korrekte Version:
Function myfunction()
'DAO vorausgesetzt
Dim dbs As Database, rst As Recordset
Dim strSQL As String, i As Integer, j As Integer, st As String
Dim arr()
On Error GoTo ErrHandl
Set dbs = CurrentDb()
strSQL = "SELECT Ident, Preis FROM test_include;"
Set rst = dbs.OpenRecordset(strSQL, dbOpenSnapshot)
'nur auslesen, keine Aktualisierung.
arr = rst.GetRows(rst.RecordCount)
'ins array reinziehen
rst.Close
Set rst = nothing 'object abmelden
For i = 0 Ubound(arr,2)
arr(0,i) = "P_" & arr(0,i)
Next
'anpassen
'nächster SQL-Schritt, diesmal aktualisierbar,
strSQL = "SELECT IdentNr, Preis FROM prod;"
Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset)
'object neu anmelden, dynaset = aktualisierbar!
rst.MoveLast
rst.MoveFirst
For i = 0 To Ubound(arr,2)
For j = 0 To rst.RecordCount - 1
If rst![IdentNr] = arr(0,i) Then
rst.Edit
rst![Preis] = arr(1,i)
rst.Update
Exit For
End If
rst.MoveNext
Next
rst.MoveFirst
Next
rst.Close
Set rst = nothing
db.Close
Set dbs = nothing
Exit Function
ErrHandl:
MsgBox Err.Description
rst.Close
Set rst = nothing
dbs.Close
Set dbs = nothing
End Function
Gruss
Uwe Nohl