ronaldo84
Erfahrenes Mitglied
Hallo
ich habe ein Paar Formulare. Wenn diese göffnet werden soll die Größe angepasst weren können. Dazu habe ich eine Tabelle (anpassen) in der die höhe und die Breite des Formulars steht. Wenn der Benutzer sich nun entscheidet die Größe anzupassen sollen die geänderten Werte in die Tabelle geschrieben werden. Das habe ich mit Update gemacht.
Wenn ich die Abfrage dann Ausführe kommt kein Fehler aber die Tabellen werden auch nicht aktualisiert. Nur der Erste Wert (höhe) wird gelöscht. d.h.
Wenn der Datensatz vorher so aussah:
Datenverarbeitung | 0 | 0
Sieht es nach der Afbrage so aus:
Datenverarbeitung | | 0
Weiß jmd warum?
Datentypen sind alles Text. Und hoehe und breite werden in einem String gespeichert.
Zum besseren Verständnis Poste ich mal den Betreffenden Quellcode:
Danke
ich habe ein Paar Formulare. Wenn diese göffnet werden soll die Größe angepasst weren können. Dazu habe ich eine Tabelle (anpassen) in der die höhe und die Breite des Formulars steht. Wenn der Benutzer sich nun entscheidet die Größe anzupassen sollen die geänderten Werte in die Tabelle geschrieben werden. Das habe ich mit Update gemacht.
Code:
sql = "update anpassen Set anpassen.hoehe = '" & hoehe & "', anpassen.breite = '" & breite & "' Where name like '" & Form.name & "';"
Wenn ich die Abfrage dann Ausführe kommt kein Fehler aber die Tabellen werden auch nicht aktualisiert. Nur der Erste Wert (höhe) wird gelöscht. d.h.
Wenn der Datensatz vorher so aussah:
Datenverarbeitung | 0 | 0
Sieht es nach der Afbrage so aus:
Datenverarbeitung | | 0
Weiß jmd warum?
Datentypen sind alles Text. Und hoehe und breite werden in einem String gespeichert.
Zum besseren Verständnis Poste ich mal den Betreffenden Quellcode:
Code:
With rst
.ActiveConnection = CurrentProject.Connection
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
End With
sql = "update anpassen Set anpassen.hoehe = '" & hoehe & "', anpassen.breite = '" & breite & "' Where name like '" & Form.name & "';"
'sqlbreite = "Update anpassen SET anpassen.breite = breite where name like '" & Form.name & "';"
rst.Open "SELECT * FROM anpassen where name like '" & Form.name & "';"
If rst.Fields("hoehe") = "0" And rst.Fields("breite") = 0 Then
antwort = MsgBox("Das Formular wurde noch nicht angepasst. Anpassen?", vbYesNo)
If antwort = vbYes Then
hoehe = InputBox("Bitte Höhe eingeben")
breite = InputBox("Bitte Breite eingeben")
DoCmd.RunSQL sql
End If
rst.Close
Danke