Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Text & Hintergrundfarbe

Begonnen von Bernie110, Dezember 13, 2010, 10:08:24

⏪ vorheriges - nächstes ⏩

Bernie110

Hallo Zusammen,

ich hab leider nichts passendes gefunden daher nun mal die Frage...

Ich habe in einem Formular ein Kombinationsfeld  =  Statusfeld das auf die Tabelle STAMM_STATUS basiert.

diese Tbl hat folgenden Inhalt & werte

LfdNr = PK Autowert
STATUS = Textfeld


1 =  Angelegt
2 =  Ladebereit
3 =  Disponiert
4 =  Beladen
5 = Entladen
6 = NO Dispo
7 = Storno
8 = Geschlossen.


Nun möchte ich, dass jeder einzelne Wert  eine andere Hintergrund & Textfarbe hat.

beispiel :

Wert       Status           Textfarbe         Hintergrundfarbe
1 =  Angelegt               Weiss              Rot
2 =  Ladebereit            Schwarz          Hellblau
3 =  Disponiert             Weiss             Dunkelgrün
4 =  Beladen                Schwarz         Gelb
5 = Entladen                Schwarz         Orange
6 = NO Dispo                Weiss            Rot
7 = Storno                    Weiss            Rot
8 = Geschlossen.          Weiss           Dunkelblau




Die bedingte Formatierung reicht leider nicht aus.

Wie würdet Ihr das machen ?

gruss
Bernie


oma

Hallo Bernie,

ich persönlich finde solche "bunten" Anwendungen nicht gut, wenn man viel damit arbeitet. Dann geht einem das eher auf die Nerven!!

In einem Einzelformular geht so etwas:

Private Sub Form_Current()
Me!LfdNr.BackColor = RGB(255, 255, 255)
    If Me!LfdNr = 1 Then Me.LfdNr .BackColor = RGB(255, 255, 0)
    If Me!LfdNr = 2 Then Me.LfdNr .BackColor = RGB(255, 0, 0)
    ....
End Sub


Gruß Oma
nichts ist fertig!

Bernie110

Hallo Oma,

ok danke.

und wie kann man das in einem tabellarischen Formular darstellen ?

Gruss Bernie

DF6GL

#3
Hallo,


gar nicht...



Wenn ich Dir jetzt eine mögliche Alternativlösung vorschlage, verschlägt es Dir vermutlich die Sprache..  ;D ;)



anstelle eines Endlosforms in einem UFO, das z. B. 6 DS anzeigen kann, nimmst Du 6 UFOs mit je der Höhe eines Datensatzes und legst die so, dass das Ganze annähernd aussieht wie das einzelne Endlos-UFO . In jedem UFO wird dasselbe Formular in Einzelansicht angezeigt. Mit geeignet programmierter Steuerung/Filterung der einzelnen Unterformulare kannst Du den ähnlichen Effekt erziehlen, als wenn Du mit einem einzelnen Endlosform durchblätterst.  Weil die einzelnen Ufos nun je ein Einzelform anzeigen, ist dort eine Formatierung entspr. dem Vorschlag von oma möglich.

Bernie110

 :o :o :o :o :o :o :o

Öhm ja...  ;D ich glaub auch Oma hat einfach recht, die User brauchen keine farblichen Darstellungen  ;D

Danke Franz, :D


WhiteCrow

Kurze Gedanke, lange beschäftigt, keine Antwort oder Vermutung:
gibt es überhaupt einem bestimmten Grund oder
wieso nur 3 Bedingte-formatierungen?

oma

Hallo,

Zitatgibt es überhaupt einem bestimmten Grund oder wieso nur 3 Bedingte-formatierungen?

ja, da musst du Microsoft fragen. ;D

wie schon gesagt ist mein persönlicher Standpunkt, das eine DB, mit der viel gearbeitet wird, einfach sparsam mit "farblichen Unterstützungen" ausgestattet werden sollte. Es handelt sich dann eben nicht um eine WEB-Site, die man sich mal gelegentlich anschaut.

Vielleicht dachten die Microsoft-Enwickler genau wie ich u. haben es dehalb bei 3 Möglichkeiten belassen ;D ;D ;D

Gruß Oma
nichts ist fertig!

Gaensi

Habe das mal so geloest

Private Sub Detailbereich_Paint()

Dim strwert As String
Dim wichCTRL As String

For x = 0 To Me.Controls.Count - 1
wichCTRL = Me.Controls.Item(x).Name

  If IsNull(Me(wichCTRL)) = False Then
        strwert = Me(wichCTRL)
        If strwert = "1" Then
            Me(wichCTRL).BackColor = 65535
        elseif strwert = "2" then
            Me(wichCTRL).BackColor = 255
            usw.   
        end if 
next x

end sub


Gruesse aus Baden
Kommt Moses nicht zum Berg, muss der Berg eben zu Moses

DF6GL

Hallo,


mhmm, das ist aber (auch) keine Lösung für ein Endlosform....   ;)

oma

Hallo Gaensi ,

Frage:
gibt es ein Ereignis:  Private Sub Detailbereich_Paint() ??
Ich arbeite nur bis Access2003, dort gibt es solch Formular-Ereignis nicht

Ansonsten hat dein Code mindestens 2 Fehler und ist doch nichts anderes als mein Vorschlag für ein Einzelformular

Dort kann man eben mit der Eigenschaft Backcolor arbeiten; im Endlosformular oder im Formular als Datenblatt kommt es aber nicht zu den gewünschten Ergebnissen, da die zugeordnete Farbe für ein Steuerelement dann für alle DS gilt!

Gruß Oma
nichts ist fertig!

Gaensi

#10
Hallo Oma ,

ich arbeite mit ACC 2007.
Im Eigenschaftenfenster heißt das Ereignis "Beim Formatübertragen"
Im Code heißt das ganze dann warum auch immer  :o "Detailbereich_Paint"

Ob das ganze in ACC 2003 vorhanden ist kann ich Dir so nicht mehr sagen  ???. Zu lange her.

btw. Das ganze gibts auch für den Bericht --> Ereignis beim Drucken --> gleicher Code

Zitatwie schon gesagt ist mein persönlicher Standpunkt, das eine DB, mit der viel gearbeitet wird, einfach sparsam mit "farblichen Unterstützungen" ausgestattet werden sollte. Es handelt sich dann eben nicht um eine WEB-Site, die man sich mal gelegentlich anschaut.

ja aber mein Auftraggeber mags nun mal bunt :o

Edit:
Habe mich mal schlaugemacht:
Nö gabs in ACC2003 nicht

Gruß Gaensi
Kommt Moses nicht zum Berg, muss der Berg eben zu Moses

DF6GL

Hallo,

nochmal zur Klärung:

von was redest Du?

Einzelform
Endlosform
Bericht

??


Wäre allerdings interessant, wenn es sich auf ein ENDLOSFORM ubnd Darstellung am Bildschirm bezöge....

Gaensi

#12
Hallo Oma, DF6GL,

habe das ganze einmal ausgetestet.

Kann somit sagen, dass die Sache in Endlosformen, Einzelformen, Unterformen sowie in allen Berichtsarten funzt.

Grüße aus Baden
Gaensi
Kommt Moses nicht zum Berg, muss der Berg eben zu Moses

DF6GL

Hallo,


aha,  danke für den Test.  Wenn das nachvollziehbar ist, hätte MS doch noch eine Kleinigkeit bei den neuen Versionen verbessert  ;D ;D  ;D

Gaensi

Hallo DF6GL,

hast Du das so nachvollziehen können ?
Würde mich über Feedback freuen.

Gruß Gaensi
Kommt Moses nicht zum Berg, muss der Berg eben zu Moses