PDA

Vollständige Version anzeigen : Textfeld-Farbe im Bericht


robinho
24.09.2003, 11:56
ich darf mit Access97 arbeiten.
ich weiß, wie es mit Access2k geht.
ich also im bericht ungefähr so:

If Me.SP = 0 Then
SP.ForeColor = 255
SP.BackColor = 255
SP.BackColor = RGB(0, 0, 0)
Me.FillColor = RGB(255, 0, 0)
Else
SP.ForeColor = 0
End If

Habe schon verschiedenste Sachen ausprobiert...funzt apa net.
Es wird immer nur die Schriftfarbe auf rot gesetzt.

muss ich noch irgendwo etwas einstellen?

es funzt auch net, wenn ich unter Eigenschaften/Format/Format
in dieser Form eingebe: 0,00;-0,00;0,00[Rot]

Grüsschen Robin

Arne Dieckmann
24.09.2003, 12:34
Die Prozedur muss im entsprechenden Bereich beim Ereignis "Beim Formatieren" angelegt werden.
Hier ein Beispiel für den Detailbereich ("SP" liegt also im Detailbereich) - Farben musst Du sicherlich noch anpassen:

Private Sub Detailbereich_Format(Cancel As Integer, FormatCount As Integer)

If Me!SP=0 Then
Me!SP.ForeColor=255
Me!SP.BackColor=0
Else
Me!SP.ForeColor=0
Me!Sp.BackColor=255
End If

End Sub

robinho
24.09.2003, 13:28
Wie ich's schon gesagt hatte, es funzt mit der Schriftfarbe,
jedoch net mit dem Hintergrund.

Wat is denn dat nur???

Arne Dieckmann
24.09.2003, 13:40
Ist die Hintergrundart auf Transparent eingestellt? Wenn ja, dann ändere diese mal auf Normal.

robinho
24.09.2003, 13:47
ja danke; hatte ich schon gemacht gehabt.
mit:

Me!Anforderungsprofil.BackStyle = 1

Wenn er dann aber wie angegeben, den Hintergrund füllen soll,
tut er dies für die ganze Spalte net fürs Feld.

Robin

Arne Dieckmann
24.09.2003, 13:49
Sprechen wir von einem Bericht oder einem Endlosformular? Könntest Du ein Beispiel Deiner Datenbank hier hochladen?

robinho
24.09.2003, 14:18
db-ähnliches gebilde ist im anhang.
ist der bericht den ich meine Namens "Dateibestand"
die Daten werden aus der Tabelle "Mitarbeiter" genommen.

Gruss Robin

Arne Dieckmann
24.09.2003, 14:40
Ich vermute, es geht um diesen Part (wenn nicht, musst Du mir sagen, um welches Textfeld es geht):

Private Sub Detailbereich_Format(Cancel As Integer, FormatCount As Integer)
Dim i As Byte
i = 1

If Me![2] = 0 Then
Me![2].BackStyle = 1
Me![2].BackColor = 255
Me![2].ForeColor = 0
Else
Me![2].BackStyle = 1
Me![2].ForeColor = 255
Me![2].BackColor = 0
End If



'___Farbtabelle für QB-Farben____
'QBColor (Farbe)

'Rest gelöscht ....

Bei mir funktioniert es so (allerdings musst Du die Farben bestimmt anpassen). Wichtig ist vor allem das Zurücksetzen der Hintergrundfarbe im Else-Teil!

robinho
24.09.2003, 14:47
das zurück setzen der hintergrund-farbe war es.
man bin ich manchmal blind.

danke dir.

gruss robin