Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
936to940
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler Recordset update

Fehler Recordset update
30.12.2007 19:39:24
Welbers
Frage an ADO-Spezialisten
ich bastele seit Tagen an dem Versuch, aus einer Excel-Tabelle Daten in eine dbf-Datei zu übertragen.
Aber der update-Befehl funktioniert nicht.
Mit rs.find versuche ich, auf einen bestimmten Datensatz zu springen, bei dem dann das Datum geändert werden soll. Ich habe das Gefühl, RS.Fields("DATUM").Value entspricht gar nicht dem Datensatz, den ich mit rs.Find gesucht habe (oder vielleicht ist der Befehl Find auch falsch).
Statt rs.find habe ich zum Test auch mal RS.filter = KN eingesetzt. Es lieferte auch eine Fehlermeldung.
Auf jeden Fall bricht das Makro beim update-Befehl ab (Laufzeitfehler 2147467259 ...).
Kann mit jemand einen Tip geben, was ich tun muss.
Schon jetzt Dank an den freundlichen Samariter
Peter
Mein Code

Sub Lauf()
Dim Con As ADODB.Connection
Dim RS As ADODB.Recordset
Dim treiber As String, sqlString As String, Datei As String, Pfad As String
Dim KN As String
Datei = "ABC"
Pfad = "c:\Tmp"
treiber = "FoxPro-Treiber"   'über Veraltung ODBC definiert
'Datenbank Öffnen
Set Con = New ADODB.Connection
With Con
.Provider = "MSDASQL; DSN=" & treiber & ";"
.Open
End With
'Auszuwählende Datenbank
sqlString = "select * from " & Datei
Set RS = New ADODB.Recordset
RS.Open sqlString, Con, adOpenKeyset, adLockOptimistic
For i = 2 To ActiveSheet.UsedRange.Rows.Count
RS.MoveFirst
KN = Cells(i, 1)
KN = "NUMMER = '" & KN & "'"
RS.Find KN
RS.Fields("DATUM").Value = Format(Cells(i, 7), "DD/MM/YYYY")
RS.Update
Next i
RS.Update
RS.Close
Set RS = Nothing
Con.Close
Set Con = Nothing
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler Recordset update
30.12.2007 21:07:00
Luschi
Hallo Peter,
schau Dir mal diese Seite an: http://support.microsoft.com/kb/229854/de
Da wird erklärt, wie man die FoxPro-DB in der verschiedenen Versionen in ADODB anspricht und was man beim Datum beachten muß.
Gruß von Luschi
aus klein-Paris

AW: Fehler Recordset update
31.12.2007 10:26:48
Welbers
Hallo,
Vielen Dank für den Hinweis, aber er bringt mich - wenn ich den Artikel richtig lese - nicht weiter. Die Datei "ABC" lässt sich mit einem FoxPro-Treiber lesen. Sie wir in einem Warenwirtschaftsprogramm verwendet. Es ist keine richtige FoxPro-Datenbank. In der Datei ist aber das Datumsformat mit DD/MM/YYYY vorgeschrieben. Wenn ich Addnew verwende, um neue Datensätze anzufügen, funktioniert das auch. Die angefügten Datensätze lassen sich dann im Programm verwenden. Wenn ich Access97 benutze, kann ich die Daten auch im Format FoxPro 2.5 schreiben. Sie sind dann auch lesbar. Es muss doch eine Möglichkeit geben, wenn Addnew - update funktioniert, auch mit Find und update die Daten zu verändern.
Vielleicht hast Du noch eine Idee.
Grüße Peter

Anzeige
AW: Fehler Recordset update
31.12.2007 15:22:00
Welbers
Hallo Luschi,
noch ein Nachtrag
Der Fehler tritt nicht allein bei Datumsfeldern auf, auch wenn ich bei einem anderen Datenfeld einen Text einfügen will, tritt der Fehler auf.
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige