If then Meldung im Steuerelement ausgeben

Hallo,

ich habe ein Formular erstellt, das auf einer Abfrage basiert. Im Formular ‚X‘ sind 3 Textfelder enthalten die Ergebnisse meiner (Parameter)Abfrage zurückliefern. Ich brauche nun ein weiteres Feld (Text oder Bezeichnungsfeld?) das mir als Meldung „erfüllt“ ausgibt, wenn der Wert in Textfeld1 >=6 und in Textfeld2 >=3 und Textfeld >=1 ist. Wenn diese Bedingung nicht erfüllt ist, soll die Meldung ‚nicht erfüllt‘ in dem Feld ausgeben werden.
Geht das überhaupt oder brauche ich immer eine Übergabe der Meldung an eine MsgBox?

Wer kann helfen?

Viele Grüße

Dirk

Hallo Dirk,

klar das geht schon, und zwar auf verschiedene Weise:

  1. Du kannst das gleich in die Abfrage einbauen oder
  2. Im Formular in der „Beim Anzeigen“ Funktion

Am leichsten ist wahrscheinlich eine Funktion in einem Modul zu plazieren, die kann man dann von ueberall aufrufen.

z.B.

Public Function CheckText( txt1 as Variant, txt2 as Variant, txt3 as Variant) as String

CheckText = „nicht erfuellt“

’ check auf Null Werte
if isNull(txt1) or isNull(txt2) or isNull(txt3) then
goto ExitHere
endif
’ test auf numerische werte
if not isNumeric(txt1) or not isNumeric(txt2) or not isNumeric(txt3) then
goto ExitHere
endif

’ check auf Werte
if CINT(txt1) >= 6 then
if CINT(txt2) = 3 then
if CINT(txt3) = 1 then
CheckText = „erfuellt“
endif
endif
endif

ExitHere:

Exit function

end function

=====================================

Dann kann man in der Abfrage ein neue Spalte einfuegen und folgendermassen kodieren

txtAusgabe: CheckText(TextFeld1,TextFeld2,TextFeld3)

===========================================

Oder aber im Formular in „Beim Anzeigen“(On_Current) Event

Du erstellst ein ungebundenes Textfeld mit dem Namen z.B. txtAusgabe
und die 3 gebunden Felder z.B. TextFeld1,TextFeld2,TextFeld3
in der On_Current Sub codiedierst du

Me.txtAusgabe = CheckText(TextFeld1,TextFeld2,TextFeld3)

Die 2. Variante ist wohl vorzuziehen, da bei der ersten Variante fuer jede Zeile der Abfrage die Function aufgerufen wird, und das bremst bei vielen Datensaetzen die Abfrage aus.

Ich hoffe es sind nicht zu viele Fehler drin, da ich die Programmzeilen hier „trocken“ eingehackt habe

Hope this helps
Peter