bedingte Formatierung



Excel-Version: 9.0 (Office 2000)
nach unten

Betrifft: bedingte Formatierung
von: Holger
Geschrieben am: 12.06.2002 - 13:34:52

Gibt es eine Möglichkeit die Anzahl der bedingten Formatierungen, welche auf 3 begrenzt sind zu erhöhen??

nach oben   nach unten

Nein. 3 st Max.
von: Alan Hathway
Geschrieben am: 12.06.2002 - 13:42:39

Nein

Mit versch. Tricks kann man u.U. ggf. was machen. Die prinzipielle Antwort ist aber Nein


nach oben   nach unten

Re: Nein. 3 st Max.
von: Holger
Geschrieben am: 12.06.2002 - 13:43:33

Was für Tricks???????????????

nach oben   nach unten

Re: Nein. 3 st Max.
von: Holger
Geschrieben am: 12.06.2002 - 13:44:03

Was für Tricks???????????????

nach oben   nach unten

Re: Nein. 3 st Max.
von: Alan Hathway
Geschrieben am: 12.06.2002 - 13:48:05

Kuck mal im ARCHIV nach.
Such nach "bedingte"

Beispiel
https://www.herber.de/forum/archiv/112to116/t115286.htm

nach oben   nach unten

Re: bedingte Formatierung
von: Silvio
Geschrieben am: 12.06.2002 - 13:52:16

Es geht mit einem Makro aus diesem Forum.
Kopiere es in den VB-Editor unter den passenden Tabellennamen.
In diesem Makro: wird ein Buchstabe im Bereich A1:A10 gedrückt
setzt die bedingte Formatierung ein.
Passe bitte den Bereich und die Eingaben für deine Tabelle noch an.


Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Row < 11 And Target.Column = 1 Then
Select Case Target.Value
Case "A"
Target.Interior.ColorIndex = 3
Case "B"
Target.Interior.ColorIndex = 5
Case "C"
Target.Interior.ColorIndex = 4
Case "10"
Target.Interior.ColorIndex = 6
Case "20"
Target.Interior.ColorIndex = 8
End Select
End If
End Sub

Hoffe das Hilft weiter!

nach oben   nach unten

Re: bedingte Formatierung
von: Hajo
Geschrieben am: 12.06.2002 - 14:00:56

Hallo Silvio und Holger

das Makro wurde in der zwischenzeit weiterentwickelt. Der von Silvio vorgeschlagene Code hat Probleme, wenn mehere Zellen mit einmal gefüllt wird


Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'   Schrift
    Dim Bereich As Range
    Dim Z
'   Bereich der Wirksamkeit
    Set Bereich = Range("B3:C20")
'   überprüfen ob mehr als eine Zelle markiert $A$1:$B$3
'   wurde mehere Zellen markiert ist wert größer 0
    If InStr(Target.Address, ":") = 0 Then
        If Intersect(Target, Bereich) Is Nothing Then Exit Sub  ' Abbruch, wenn Aktion nicht im Zielbereich
'       Kreuz entfernen
        Target.Borders(xlDiagonalDown).LineStyle = xlNone
        Target.Borders(xlDiagonalUp).LineStyle = xlNone
'       Schriftfarbe setzen
        Select Case Target.Value
            Case "1"
'               mal eine andere Variante Kreuz in Zelle
                With Target.Borders(xlDiagonalDown)
                    .LineStyle = xlContinuous
                    .Weight = xlThick
                End With
                With Target.Borders(xlDiagonalUp)
                    .LineStyle = xlContinuous
                    .Weight = xlThick
                End With
                Target.Font.ColorIndex = 0
            Case "2"
                Target.Font.ColorIndex = 2
                ' weiß
            Case "3"
                Target.Font.ColorIndex = 3
                ' rot
'           usw.
            Case Else
                Target.Font.ColorIndex = 0
        End Select
    Else
'       es wurden mehere Zellen markiert
        For Each Z In Selection
'           überprüfen ob Zelle im vorgegebenen Bereich
            If Intersect(Z, Bereich) Is Nothing Then
            Else
'               Kreuz entfernen
                Z.Borders(xlDiagonalDown).LineStyle = xlNone
                Z.Borders(xlDiagonalUp).LineStyle = xlNone
                Select Case Z.Value
'                   Select case Anweisung wie oben
                    Case "1"
                        With Z
                            With .Borders(xlDiagonalDown)
                                .LineStyle = xlContinuous
                                .Weight = xlThick
                            End With
                            With .Borders(xlDiagonalUp)
                                .LineStyle = xlContinuous
                                .Weight = xlThick
                            End With
                        End With
                        Z.Font.ColorIndex = 0
                    Case "2"
                        Z.Font.ColorIndex = 2
                        ' weiß
                    Case "3"
                        Z.Font.ColorIndex = 3
                        ' rot
'                   usw.
                    Case Else
                        Z.Font.ColorIndex = 0
                End Select
            End If
        Next Z
    End If
End Sub

Auch der neue Code wirkt nur bei ingabe im vorgegebenen Bereich. Er wirkt also nicht bei Formel.


Gruß Hajo

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "bedingte Formatierung"