Koordinaten in Access hinzufügen

Hallo zusammen,

ich habe das Problem, das ich mit Hilfe von ArcView 3.2a in eine Access 97 Datenbank Koordinaten schreiben möchte. Leider funktioniert das nicht.
Es kommt immer die Fehlermeldung
[Microsoft][ODBC Microsoft Access Driver] Datentypen in Kriterienausdruck unverträglich

Ich habe die Access Datenbank via SQL in ArcView geladen und daraus ein Ereignisthema gemacht. Wenn ich nun das Script über einen erzeugten Button laufen lasse, kann ich zwar noch die Container ID eingeben, aber dann kommt schon die Fehlermeldung.

Hier mein Script:
'Diese Funktion speichert die Koordinaten zu einem gewählten Punkt und
'speichert diese in einer Datenbank

theView = av.GetActiveDoc
'speichern des MausKlicks
pt = theView.GetDisplay.ReturnUserPoint
'speichern der Koordinaten x und y in einer Variablen
x = pt.GetX
y = pt.GetY
'Formatierung der gespeicherten Werte
x = x.setformat("d").asstring
y = y.setformat("d").asstring
'Abfrage der Schlüsselnummer für die richtige Zuordnung der Koordinaten
p = MsgBox.input("Bitte vergeben sie eine Schlüsselnummer","Container_ID","")

if (p= nil) then
MsgBox.error ("Sie müssen eine Schlüsselnummer vergeben!","Fehler")
exit
end

'Zusammenstellen des SQL-String für das Einlesen der Koordinaten in die Datenbank
sqlString = "UPDATE Container SET XWERT = '"+x+"' , YWERT = '"+y+"' WHERE ID = '"+p+"';"

'Verbindung zur Datenbank herstellen und einlesen der Koordinaten
SQLCon.Find("Container").ExecuteSQL(sqlString)
'Aktualisieren der Tabelle und darstellen des neu eingefügten Punktes
av.FindDoc("Container").GetVTab.Refresh

In der Datenbank ist die Spalte xWert und yWert ein Zahlenfeld, die Spalte ID ein Autowert.

Liegt dort vielleicht das Problem??
Ich habe schon die Spalten mit den Koordinaten in Textfelder geändert, aber das hat nichts gebracht. Die Spalte ID kann ich nicht ändern.

Hat vielleicht jemand einen Tip ?

Vielen Dank

Gruß
Andreas
Ich bin kein SQL-Checker aber du reichst hier alle Werte als String weiter:

SET XWERT = '"+x+"' , YWERT = '"+y+"' WHERE ID = '"+p+"';"

Hast du mal versucht, was ohne Hochkomma passiert?
Hallo Maxilla,

Deine Antwort war mal wieder goldrichtig. Jetzt schreibt er die Koordinaten
in die Tabelle und auch die Tabelle im Projekt enthält die Koordinaten.

Nur der Punkt wird nicht angezeigt. Läuft etwas schief bei der Aktualisierung? hast du da auch noch einen Tip?

Gruß
Andreas
Die Punkte werden nicht im View angezeigt, obwohl sie in der Tabelle
stehen, welche Grundlage des Ereignisthemas sind.

Gibt es dafür einen Grund?
Funktioiert es so?

theView = av.GetActiveDoc
'speichern des MausKlicks
pt = theView.GetDisplay.ReturnUserPoint
'speichern der Koordinaten x und y in einer Variablen
x = pt.GetX
y = pt.GetY
'Formatierung der gespeicherten Werte
x = x.setformat("d").asstring
y = y.setformat("d").asstring
'Abfrage der Schlüsselnummer für die richtige Zuordnung der Koordinaten
p = MsgBox.input("Bitte vergeben sie eine Schlüsselnummer","Container_ID","")

if (p= nil) then
MsgBox.error ("Sie müssen eine Schlüsselnummer vergeben!","Fehler")
exit
end
av.FindDoc("Container").GetVTab.SetEditable (TRUE)
'Zusammenstellen des SQL-String für das Einlesen der Koordinaten in die Datenbank
sqlString = "UPDATE Container SET XWERT = '"+x+"' , YWERT = '"+y+"' WHERE ID = '"+p+"';"

'Verbindung zur Datenbank herstellen und einlesen der Koordinaten
SQLCon.Find("Container").ExecuteSQL(sqlString)
'Aktualisieren der Tabelle und darstellen des neu eingefügten Punktes
av.FindDoc("Container").GetVTab.SetEditable (FALSE)
av.FindDoc("Container").GetVTab.Refresh
theView.FindTheme("Container").GetFTab.Refresh
Moin Moin Maxilla,

Es klappt einwandfrei! Vielen Dank das erleichtert die Sache schon ungemein.

Gruß und schönes Wochenende

Andreas