Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
360to364
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
360to364
360to364
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bedingte Formatierung

Bedingte Formatierung
12.01.2004 18:02:04
Doreen
Hallo,
kann mir jemand bei folgenden Problem helfen?
Habe folgend Excel Tabelle:
Er soll im Bereich A1:A2000 nach dem Wert 100 suchen und die entsprechenden Zeilen rot färben.
Beim Wert 50 = gelb färben etc. etc.
Gruß
Doreen

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:03:42
PeterW
Hallo Doreen,
wie weit geht dein etc. weiter? Werden die Zellwerte geändert und wenn ja wie, Eingabe oder Formeln?
Gruß
Peter
AW: Bedingte Formatierung
12.01.2004 18:09:27
Doreen
Hallo Peter,
ja die Zellwerte können sich ändern. Werden aber manuell geändert.
D.h. die 100 kann später in eine 50 geändert werden und somit muß sich auch die Farbe der Zeile ändern.
Das sollte er nach Möglichkeit immer automatisch erkennen.
Gruß
Doreen
AW: Bedingte Formatierung
12.01.2004 18:14:15
PeterW
Hallo Doreen,
dann dürfte das mit VBA und dem Worksheet_Change-Ereignis kein Problem sein. Welche Farbe bei welchen Bedingungen?
Gruß
Peter
AW: Bedingte Formatierung
12.01.2004 18:16:59
Doreen
Hallo Peter,
bei Wert 100 = Hintergrundfarbe rot
bei Wert 99 = Hintergrundfarbe grün
bei Wert 90 = Hintergrundfarbe gelb
bei Wert 50 = Hintergrundfarbe blau
bei Wert 5 = Hintergrundfarbe grau
Gruß
Doreen
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:25:50
PeterW
Hallo Doreen,
Rechtsklick auf das Tabellenregister, in dem der Code arbeiten soll - Code anzeigen. IN das große Fenster folgenden Code kopieren:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A2000")) Is Nothing Then
Select Case Target
Case 100
Target.Interior.ColorIndex = 3
Case 99
Target.Interior.ColorIndex = 4
Case 90
Target.Interior.ColorIndex = 6
Case 50
Target.Interior.ColorIndex = 5
Case 5
Target.Interior.ColorIndex = 15
End Select
End If
End Sub

Sofern schon Einträge vorhanden sind müssten diese einmalig über eine Schleife eingefärbt werden.
Gruß
Peter
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:33:12
andre
...und noch eine kleine Verbesserung, falls du in dem bereich mal zeilen löschst:

Private Sub Worksheet_Change(ByVal Target As Range)
on error goto ende
If Not Intersect(Target, Range("A1:A2000")) Is Nothing Then
Select Case Target
Case 100
Target.Interior.ColorIndex = 3
Case 99
Target.Interior.ColorIndex = 4
Case 90
Target.Interior.ColorIndex = 6
Case 50
Target.Interior.ColorIndex = 5
Case 5
Target.Interior.ColorIndex = 15
End Select
End If
ende:
End Sub

gruss andre
AW: Bedingte Formatierung
12.01.2004 18:36:13
Doreen
Hallo Peter HAllo Andre,
sorry es klappt.
Aber er färbt nur die eine Zelle und nicht die ganze Zeile.
Geht das auch?
Liebe Grüße
Doreen
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:33:27
Doreen
Hallo Peter Hallo Andre,
beim Verwuch das Makro abzuspielen fragt er mich nach einem Makronamen.
Klappt irgendwie nicht.
Gruß
Doreen
AW: Bedingte Formatierung
12.01.2004 18:36:06
PeterW
Hallo Doreen,
du brauchst nichts zu starten, das Makro läuft automatisch bei einer Änderung im von dir angegebenen Bereich. Ich klinke mich aus, andre wird dir sicherlich weitere Fragen beantworten.
Gruß
Peter
AW: Bedingte Formatierung
12.01.2004 18:37:12
Doreen
Hallo Peter,
vielen Dank für Deine Hilfe.
Gruß
Doreen
AW: Bedingte Formatierung
12.01.2004 18:49:28
Doreen
Hallo Andre,
kannst Du mir nochmal helfen?
Das Makro soll nicht nur die eine Zelle färben sondern die gesamte zeile A1 bis Z1.
Gruß
Doreen
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:58:19
andre
hallo doreen,
mit noch einer verbesserung - wenn du eine andere zahl wählst wird die farbe entfernt.

Private Sub Worksheet_Change(ByVal Target As Range)
Set isect = Application.Intersect(Target, [a1:a2000])
If Not isect Is Nothing Then
On Error GoTo ende
Select Case Target.Value
Case Is = 5
Rows(Target.Row).Interior.ColorIndex = 15
Case Is = 50
Rows(Target.Row).Interior.ColorIndex = 41
Case Is = 90
Rows(Target.Row).Interior.ColorIndex = 27
Case Is = 99
Rows(Target.Row).Interior.ColorIndex = 4
Case Is = 100
Rows(Target.Row).Interior.ColorIndex = 3
Case Else
Rows(Target.Row).Interior.ColorIndex = 0
End Select
End If
'bei Wert 100 = Hintergrundfarbe rot
'bei Wert 99 = Hintergrundfarbe grün
'bei Wert 90 = Hintergrundfarbe gelb
'bei Wert 50 = Hintergrundfarbe blau
'bei Wert 5 = Hintergrundfarbe grau
'bei allen anderen = ohne Hintergrundfarbe
ende:
End Sub

gruss andre
Anzeige
AW: Bedingte Formatierung
12.01.2004 19:14:09
andre
hallo doreen,
wir schaffen das heute noch ... ;-)

Private Sub Worksheet_Change(ByVal Target As Range)
Set isect = Application.Intersect(Target, [a1:a2000])
If Not isect Is Nothing Then
On Error GoTo ende
Select Case Target.Value
Case Is = 5
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 15
Case Is = 50
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 41
Case Is = 90
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 27
Case Is = 99
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 4
Case Is = 100
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 3
Case Else
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 0 'oder xlnone
End Select
End If
'bei Wert 100 = Hintergrundfarbe rot
'bei Wert 99 = Hintergrundfarbe grün
'bei Wert 90 = Hintergrundfarbe gelb
'bei Wert 50 = Hintergrundfarbe blau
'bei Wert 5 = Hintergrundfarbe grau
'bei allen anderen = ohne Hintergrundfarbe
ende:
End Sub

Anzeige
AW: Bedingte Formatierung
13.01.2004 09:41:09
Doreen
Hallo Andre Hallo Peter,
ich Danke euch für die schnelle Hilfe hat Super geklappt.
Liebe Grüße
Doreen
AW: danke für die rückmeldung - o.t.
13.01.2004 15:58:32
andre
AW: Bedingte Formatierung
12.01.2004 18:59:37
PeterW
Hallo Doreen,
andre scheint Feierabend zu haben. Probier es mal mit diesem Code (den anderen bitte löschen!)

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A2000")) Is Nothing Then
Select Case Target
Case 100
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 3
Case 99
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 4
Case 90
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 6
Case 50
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 5
Case 5
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = 15
Case ""
Range(Cells(Target.Row, 1), Cells(Target.Row, 26)).Interior.ColorIndex = xlNone
End Select
End If
End Sub

Allerdings gibt es Probleme, wenn mehr als ein Zellbereich gelöscht werden soll. Sofern das möglich sein soll muss noch etwas ergänzt werden.
Gruß
Peter
Anzeige
AW: Bedingte Formatierung
12.01.2004 18:05:37
Mark Schmidt
Hallo Doreen,
mit der Bedingten Formatierung kannst du nur 3 Formate einstellen,
also 100 = rot, 50 = gelb und 25 = grün.
Du makierst einfach alle Zellen, die das betrifft, gehst auf Format -> Bedingte Formatierung. Dann stellst du ein "Zellwert ist" "gleich" 100 --> Format -> Farbe rot
Hoffe das hilft dir.
AW: Bedingte Formatierung
12.01.2004 18:13:45
Doreen
Hallo Mark,
das habe ich schon versucht leider habe ich nicht nur 3 Formate sondern mindestens 6.
Trotzdem Danke für Deine schnelle Antwort.
Gruß
Doreen
AW: Bedingte Formatierung
12.01.2004 18:22:08
andre
hallo doreen,
im prinzip so - code in codemodul des Tabellenblattes:

Private Sub Worksheet_Change(ByVal Target As Range)
'andre schau 12.01.2004
Set isect = Application.Intersect(Target, [a1:a2000])
If isect Is Nothing Then
MsgBox "Ranges do not intersect"
Else
Select Case Target.Value
Case Is = 50
Target.Font.ColorIndex = 3
Case Is = 100
Target.Font.ColorIndex = 5
' hier weitere cases
End Select
End If
End Sub

gruss andre
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige