Mahlzeit zusammen.
Hab da (mal wieder) ne Idee aber die Umsetzung will nicht so ;)
Also ich habe eine Tabelle U1 in die aus einem Formular die Daten geschrieben werden.
Aus dieser Tabelle wird eine Abfrage gemacht die je nach Datum einen Wert ausgibt:
Status: Schalter(Datum()<[Vorlage160];"OK";Datum()=[Vorlage160];"CHECK";Datum()>[Vorlage160];"KRITISCH") (da gehört natürlich noch was anderes zu aber dieses resultat is wichtig ;) )
Diese Berechnung wiederrum wird in genau das Formular übertragen, mit dem ich den Usprungswert in die Tabelle schreibe. Funktioniert auch alles (Danke nochmal für die Idee mit der Abfrage und der Formel ;) )
Nun möchte ich ganz gerne das Feld im Formular je nach Ergebnis einfräben. Hieße also bei OK grüner Hintergrund weiße schrift, bei Check gelber hintergrund und weiße schrift, bei Kritisch roter hintergrund und weiße schrift.
Habe schon versucht das mit einer bedingten Formatierung zu realisieren aber das will nicht so wirklich klappen.
Hat wer einen Lösungsansatz für mich ?
Vielen Dank schonmal im voraus ;)
Unter der Voraussetzung, daß es ein Einzelformular ist, kann man dies recht einfach machen.
if me.feld="kritisch" then
me.feld.backcolor = rgb(255,0,0)
end if
Hallo,
ZitatUnter der Voraussetzung, daß es ein Einzelformular ist, kann man dies recht einfach machen.
If Me!Feld = "KRITISCH" Then
Me!Feld.BackColor = RGB(255, 0, 0) 'Hintergrund rot
Me!Feld.ForeColor = RGB(255, 255, 255) 'Schrift weiss
ElseIf Me!Feld = "CHECK" Then
Me!Feld.BackColor = RGB(255, 255, 0) 'Hintergrund gelb
Me!Feld.ForeColor = RGB(255, 255, 255) 'Schrift weiss
ElseIf Me!Feld = "OK" Then
Me!Feld.BackColor = RGB(0, 153, 0) 'Hintegrund grün
Me!Feld.ForeColor = RGB(255, 255, 255) 'Schrift weiss
Else
Me!Feld.BackColor = RGB(255, 255, 255) 'Hintergrund weiss
Me!Feld.ForeColor = RGB(0, 0, 0) 'Schrift schwarz
End If
...und am Besten im Ereignis 'Beim Anzeigen' (Form_Current) des Formulars, auf dem sich das Feld befindet bzw. ein geeignetes Ereignis des Feldes sebst
Klasse. Habe das Ganze mal getestet. Wenn ich das Feld nehme und den Code dort benutze als OnClick Ereigniss geht es. Finde bei den Ereignissen aber kein "Beim Anzeigen" .
Wie gesagt seid bitte gnädig mit mir ^^ Bin absoluter Neuling, versuche aber schnell zu lernen :-D
Hallo,
vermutlich schaust Du in den Eigenschaften des Steuerelementes und nicht in den Eigenschaften des Formulares nach...
Und du hast da wahrscheinlich recht gehabt ;)
Mit welchen Ereignissen kann ich es denn nun richtig anstellen das:
Die richtige Farbe beim öffnen des Formulares geladen bzw gesetzt wird
und was noch viel wichtiger ist
Das wenn ich an dem Ursprungsdatum etwas ändere und dann ins nächste Feld "tabbe" und der Status sich in der berechnung ändert, ich das auch gleich im Formular sehe.
Hoffe Ihr versteht mein kauderwelsch ;)
Hallo,
nun, die beiden besagten Ereignisse:
Form_Current ("Beim Anzeigen" des Formulares)
Afterupdate() ( "Nach Aktualisierung" des Steuerelementes)
Muss ich bei afterupdate dann den Namen des steuerelements mit angeben ? Also das was aktualisiert wurde?
Hallo,
mhmm,
weißt Du denn, wie man eine Ereignisprozedur anlegt?
"Das wenn ich an dem Ursprungsdatum etwas ändere und dann ins nächste Feld "tabbe" und der Status sich in der berechnung ändert"
Für das Textfeld, das das Ursprungsdatum anzeigt, triit das Ereignis "Nach Aktualisierung" auf, wenn man den Wert geändert hat und den Fokus in ein anderes Feld bewegt.
Japp weiß ich, zugegeben war ne blöde Frage... War wohl zu müde ;)
Aber ist ja auch logisch. AfterUpdate als Ereignisprozedur für das Datumsfeld.
Ist garnicht so einfach sich da rein zu fuchsen, aber das muss nun irgendwie mal klappen ;)