Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Access - Formular schließen





Frage

Folgendes Problem: ich habe ein Formular, in dem ich, wenn ich auf eine Schaltfläche klicke, eine Abfrage öffne. Jetzt möchte ich, dass dieses Formular sich sofort schließt, wenn die Abfrage sich öffnet So sieht mein Code aus: Private Sub Befehl0_Click() On Error GoTo Err_Befehl0_Click CurrentDb.QueryDefs.Delete NameDerAbfrage CurrentDb.CreateQueryDef NameDerAbfrage, SQLText DoCmd.OpenQuery NameDerAbfrage ‘so geht es nicht ####################################### DoCmd.Close acForm, "FormularDasGeschlossenWerdenSoll" Exit_Befehl0_Click: Exit Sub Err_Befehl0_Click: MsgBox Err.Description Resume Exit_Befehl0_Click End Sub Was mache ich falsch oder was habe ich vergessen? Danke im Voraus maxim66

Antwort 1 von lleopard

hi,

versuchs doch mal einfach mal mit DoCmd.Close ohne zusatz.

und ganz oben unter die subroutine schreibst du

on error resume next

dann kannst du testen, ob der Befehl umgesetzt oder ignoriert wird.

ggf. setzt du einen Haltepunkt bei der zeile mit DoCmd....

Eigentlich solltest du ja einen Fehler bekommen. Denn ich denke, daß er den Befehl nicht ausführt, weil deine CurrentDb... schon vorher einen Fehler auslösen.

Gruß leo

Antwort 2 von Locke

Hallo,
versuche es mal so herum:

Private Sub Befehl0_Click()
On Error GoTo Err_Befehl0_Click

DoCmd.Close acForm, "FormularDasGeschlossenWerdenSoll"

CurrentDb.QueryDefs.Delete NameDerAbfrage
CurrentDb.CreateQueryDef NameDerAbfrage, SQLText
DoCmd.OpenQuery NameDerAbfrage

Exit_Befehl0_Click:
Exit Sub

Err_Befehl0_Click:
MsgBox Err.Description
Resume Exit_Befehl0_Click

End Sub


Erst schließen, dann die Abfrage ausführen.

Gruß
Locke

Antwort 3 von maxim66

Hallo,

"DoCmd.Close ohne zusatz" habe ich schon ausprobiert. In diesem Fall wird meine Abfrage geschlossen anstatt des Formulars.

Und jetzt, wenn ich "on error resume next" einbaue, läuft der Code einfach weiter ohne in dieser Zeile was zu machen. D.h. Abfrage offen, Formular offen.

Weitere Vorschläge?

Gruß maxim66

Antwort 4 von maxim66

Hallo,

danke für Eure Hilfe.
Ich habe jetzt den Fehler gefunden (dummer Fehler im Namen des Formulars). Es gab keine passende Fehlermeldung und ich habe auch nicht drauf geachtet, zu blöd. Sonst war meine Lösung OK.
Übrigens Locke andersrum geht es nicht - Fehlermeldung

Gruß maxim66

Antwort 5 von Locke

welche Fehlermeldung bekommst Du denn?

Gruß
Locke

Antwort 6 von maxim66

"In dem von Ihnen eingegebenen Ausdruck wird auf ein Objekt verwiesen, das geschlossen ist oder nicht existiert."

Gruß maxim66

Antwort 7 von Locke

Hallo,
kannst Du die Datenbank mal bei Netupload hochladen und den Link hier reinsetzen bitt?

Gruß
Locke

Antwort 8 von Marie

Hi Locke,

es kann kein Formular geschlossen werden das nicht existiert, So stellt sich das für Access dar, wenn er einen Rechtschreibfehler im Formularnamen hat.

Hast Du seine vorletzte Antwort nicht gelesen?

Gruß Marie

Antwort 9 von Locke

Ja,
ich dachte aber er hat den Namen nun korrigiert und es käme dann eine Fehlermeldung......
Er meinte ja seins geht nun und meins nicht.
Ergo gehe ich davon aus das der Schreibfehler weg ist.

Gruß
Locke