Abfragebedingung für autom. Formularöffnen

Hallo Experten bitte um eure Hilfe bei folgenden Problem:

Ich habe in einem Eingabe-Formular ‚START‘ ein Listenfeld „Bearbeitungsstatus“ mit den Auswahlmöglichkeiten blank ‚offen‘ und ‚abgeschlossen‘.
Aus der zugrunde liegenden Tabelle habe ich eine Abfrage (Arbeitsstatus offen)erstellt, die alle Datensätze mit dem Status ‚offen‘ selektiert. Soweit kein Problem. Diese Abfrage soll aus einem anderen Formular mit Hilfe eines Buttons gestartet werden. Auch kein Problem.

Nun würde ich gerne eine automatische Meldung (Text z.B.: Zur Zeit keine DS vorhanden)erhalten, nur wenn keine Datensätze mit dem Status ‚offen‘ vorhanden sind ansonsten die zutreffenden Datensätze. Habe versucht das über ein Makro, welches bei Erfüllung des Kriteriums ein weiteres Formular mit dem entsprechenden Text automatisch öffnen sollte,zu realisieren. Ich scheitere aber an den richtigen Filter/bzw Bedingungssyntax.

Gibt es da vielleicht eine komfortablere Lösung und wo müsste
der Befehl eingegeben werden. Unter welchem Stichwort kann ich das nachlesen?

Grüße und Danke für jede Info
j.mojo

Moin, mojo,

das Formular, in dem die Sätze angezeigt werden, ist mit Ereignissen wie Load oder Open verknüpft, dort platzierst Du die Abfrage, ob Sätze vorhanden sind.

Entwurfsansicht > rechte Maustaste > Ereignis führt zum VBA-Editor, dort die Hilfe erklärt die Ereignisse.

Gruß Ralf

Hallo Ralf, danke für die Anregung.
Habe nach Studium des Hilfetextes doch die Möglichkeit über ein Makro gewählt. Als Bedingung habe ich eingegeben: Formular![Name des Formulars]![Arbeitsstatus]IstNull.Das Ergebnis ist auch so wie gewünscht, liefert die im Formular hinterlegte Abfrage keine Werte, erscheint das Formular mit dem entsprechenden Text das keine Werte vorhanden sind. Nur leider lässt sich dieses Formular dann nicht mehr schliessen, solange das inizierende Formular geöffnet ist. Das ist natürlich keinesfalls bedienerfreundlich! Hab alle Aktionen im Makro auf Abhilfe geprüft, ohne Erfolg.Hab so wohl eine Endlos-Schleife eingebaut??? Gibt es für meinen Weg eine Lösung? Mit dem VBA-Editor komme ich ehrlich gesagt noch nicht so klar.

Moin, mojo,

Deine Vorgehensweise ist eh recht ungewöhnlich. Mitteilungen setzt man nicht auf ein neues Formular, sondern gibt sie per MsgBox aus, wenn es Warnungen sind, oder wahlweise im Formular in der Statuszeile, wenn es um Infos wie die Anzahl der Sätze (eigentlich überflüssig) geht. Deshalb komme ich mit

leider lässt sich dieses Formular dann nicht mehr schliessen,
solange das inizierende Formular geöffnet ist.

nicht klar; dass sich ein Formaler nicht schließen lässt, habe ich noch nie gesehen.

Mit dem VBA-Editor komme ich ehrlich gesagt noch nicht so klar.

Die Ursache ist vielleicht nicht so sehr der Editor als die Denke in Ereignissen: Irgendetwas passiert, und das dient als Auslöser für Abfragen / Ausgaben / Nachrichten / wasweißich.

Gruß Ralf

Hallo Ralf, habe das Ganze selbst nochmals überdacht, klar lagen meine Probs nicht beim Editor. Habe mich in Ruhe an das Ganze gesetzt und nach und nach über die Hilfe im VBA-Editor die Lösung gefunden. Hab den Text als „Meldung“ im Formular selbst integriert, der dann erscheint, wenn die Bedingung im Listenfeld „true“ ist. Zusätzlich habe ich dann noch eine MsgBox angehängt. Jetzt ist es echt bedienerfreundlich. Danke für die richtigen Denkanstöße und Stichworte!
Die Idee, eine Mitteilung als Formular zu erstellen war aus jetziger Sicht echt „ungewöhnlich“ , wenn man das nett ausdrücken will. Jetzt weis ich wie’s geht. Das Formular lies sich übrigends doch schliessen,
es öffnete sich nur sofort wieder, weil ja die Abfrage dahinter immer noch aktiv war (hab mal eine Zeitverzögerung auf das Formular gesetzt, da konnte ich meinen Fehler erkennen).
Nochmal meinen Dank für die richtigen Denkanstöße
und viele Grüße aus der Eifel
j. mojo