Discussion:
Bearbeitung einer Zeile im Unterform per VBA beenden
(zu alt für eine Antwort)
Jan
2008-08-13 12:39:11 UTC
Permalink
Hallo,

ich habe ein Haupt-Form mit einem Unter-Form, wo die Daten einer Tabelle in
der Datenblattansicht angezeigt werden (also zeilenweise). Nun habe ich in
dieser Unter-Form eine Checkbox, die ein Benutzer anwählen kann. Mit Klick
auf einen Button, der sich auf dem Haupt-Form befindet möchte ich per VBA
die angewählten Zeilen herausfinden. Allerdings habe ich das Problem, wenn
ich die Checkbox anklicke, dass sich die Zeile noch im Bearbeitungsmodus
befindet (erkennt man am Symbol vorn an der Zeile). Wenn man nun direkt auf
den Button klickt, dann sind die Daten noch nicht übernommen, so dass es
nicht funktioniert. Erst beim 2. Klick gehts dann bzw. wenn ich nach Anwahl
der Checkbox vorher in ein anderes Control klicke.

Gibt es einen VBA-Befehl, der die Bearbeitung abschließt?

Viele Grüße
Jan
Mark Doerbandt
2008-08-13 12:43:35 UTC
Permalink
Hallo, Jan,
Post by Jan
Gibt es einen VBA-Befehl, der die Bearbeitung abschließt?
versuche mal, .Dirty fuer das Unterformular auf False zu setzen.

Gruss - Mark
--
Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beiträge senden.
Jan
2008-08-13 13:07:47 UTC
Permalink
Hi Mark,
Post by Mark Doerbandt
versuche mal, .Dirty fuer das Unterformular auf False zu setzen.
Hat leider nix geholfen.

Jan
Mark Doerbandt
2008-08-13 13:15:04 UTC
Permalink
Hallo, Jan,
Post by Jan
Hat leider nix geholfen.
zeig doch mal die Codezeile. Wo hast Du sie aufgerufen und was
passiert?

Gruss - Mark
--
Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beiträge senden.
Jan
2008-08-13 13:35:22 UTC
Permalink
Hi,
zeig doch mal die Codezeile. Wo hast Du sie aufgerufen und was passiert?
Die Zeile heißt:
frmKonen.Form.Dirty = False

"frmKonen" ist das Unterformular. Die Funktion wird bei "Klick" aufgerufen.
In dieser Funktion frage ich direkt in der Tabelle mit SELECT ab, welche
Datensätze markiert sind. Aber wie gesagt - es werden keine Zeilen gefunden.

Jan
Thomas Möller
2008-08-13 16:36:07 UTC
Permalink
Hallo Jan,
Post by Jan
Hi,
zeig doch mal die Codezeile. Wo hast Du sie aufgerufen und was passiert?
frmKonen.Form.Dirty = False
"frmKonen" ist das Unterformular. Die Funktion wird bei "Klick" aufgerufen.
In dieser Funktion frage ich direkt in der Tabelle mit SELECT ab, welche
Datensätze markiert sind. Aber wie gesagt - es werden keine Zeilen gefunden.
schau Dir mal bitte an, wie man einen Bezug auf ein Unterformular macht:
www.donkarl.com?FAQ4.2
(Link in einer Zeile)


CU
--
Thomas

Homepage: www.Team-Moeller.de
Jan
2008-08-14 06:52:03 UTC
Permalink
Hi,
Post by Thomas Möller
www.donkarl.com?FAQ4.2
Ok, das war es. Ich hatte mich zu sehr auf das IntelliSense von Access
verlassen.
Es funktioniert mit:
Me![frmKonen].Form.Dirty = False

Viele Grüße
Jan
Thomas Möller
2008-08-14 16:00:44 UTC
Permalink
Hallo Jan,
Post by Jan
Post by Thomas Möller
www.donkarl.com?FAQ4.2
Ok, das war es. Ich hatte mich zu sehr auf das IntelliSense von Access
verlassen.
Me![frmKonen].Form.Dirty = False
Danke für die Rückmeldung.

BTW: Die eckigen Klammern rund um den Formularnamen kannst Du ruhig
weglassen. Das macht den VBA-Code etwas lesbarer.

Die Klammern bräuchtest Du nur, wenn Deine Objektnamen Leer- oder
Sonderzeichen enthalten würde. Da Du ja aber auf Leer- und Sonderzeichen
in Objektnamen komplett verzichtest weil es einfach besser ist, brauchst
Du die eckigen Klammern gar nicht mehr. ;-)

CU
--
Thomas

Homepage: www.Team-Moeller.de
Loading...