[Excel 2010] Bedingte Formatierung mit variablen Maximalwert

Carndret

Erfahrenes Mitglied
Hallo,

ich wollte gerade eine Tabelle machen in der die Spalte A eine Zahl enthält die je ein Maximum darstellt und in der Spalte B jeweils der aktueller Wert. In der Spalte A steht dann z.B. die Anzahl Teile die ich geliefert bekommen habe und in Spalte B, die Anzahl, die noch verfügbar ist. Per bedingter Formatierung will ich nun mit Datenbalken oder einer Farbskala das ganze visuell darstellen.
Mein Problem ist, dass ich immer nur einen Maximalwert festlegen kann auf den sich die gesamte Spalte B bezieht.

z.B.
_A_|_B_
20 | 20 >> Balken wird in Spalte B voll dargestellt
10 | 10 >> Balken wird in Spalte B nur halb dargestellt, da Maximalwert von oben genommen wird

Wie kann man nun für jede Zeile den Maximalwert aus Spalte A benutzten. Da ich an die 100 Zeilen damit füttern möchte wollte ich nicht für jede Zeile eine neue Regel erstellen.

Danke schon mal für die Hilfe!
 
Wenn in Spalte A der Wert steht den du geliefert bekommen hast und in Spalte B der noch verfügbare Bestand.

Dann kann in Spalte B ein Wert stehen der zwischen 0 und dem Wert von Spalte A sein?

Was soll jetzt mit der bedingten Formatierung dargestellt werden?
 
Ja, in Spalte B ist ein Wert zwischen 0 und dem dazugehörigem Anfangswert in Spalte A. Mit der Formatierung soll nun ein Balken oder ein Farbverlauf (in der Spalte B als Hintergrund) angezeigt werden, der den Wert in Spalte B in Abhängigkeit vom Wert in Spalte A anzeigt.
Momentan müsste ich für jede Zeile eine neue Formatierung machen in der ich den Maximalwert von Spalte A hole. Ich will nun wissen, ob es möglich ist, das mit einer einzigen Formatierung zu machen.
 
Markiere doch die komplette Spalte B und gib dann bei der bedingten Formatierung z.B.

Visual Basic:
=($B1/$A1) < 0,5

ein und wähle die gewünschte Formatierung aus. Das wird dann für alle Zellen entsprechend übernommen.
 
Das geht dann aber nicht mit der automatischen Farbskala von Excel 2010. Ich habe ja einfach links den Maximalwert und rechts den Istwert, der farblich hinterlegt werden soll. Da kann ich keine Formeln mehr eingeben. Auch nicht im Formatierungsmanager. Und $B1 geht z.B. gar nicht, da er nur feste Zellen wie $B$1 annimmt.
Vielleicht ist das auch nicht vorgesehen, sowas für viele Zeilen automatisch zu machen...
Notfalls mach ichs halt dann ganz anders :(
 
Grüezi Carndret

Die bedingte Formatierung mit Datenbalken kann immer nur mit einem absoluten Bezug arbeiten, daher kannst Du nicht den ganzen Bereich so belegen.
Es gibt aber die folgende Möglichkeit dies dennoch zu tun:

Lege die Bedingte Formatierung für B1 fest indem Du den Maximalwert aus A1 holst (soweit bist Du schon, denke ich).

Jetzt wichtig! Kopiere alle Werte aus Spalte B und füge sie temporär in einer anderen Spalte ein.

Kopiere nun B1 und füge diese Zelle dann in allen anderen Zellen von Spalte B ein - der Bezug wird sich dann auf die jeweilige Zeile in Spalte A anpassen.

Kopiere nun die ursprünglichen Werte (über Einfügen/ Werte oder Einfügen/Formeln) wieder zurück in Spalte B.


Nun sollte das Ganze passen.
 
Hallo Thomas,

ich habs jetzt gerade mal ausprobiert. Wenigstens macht er mit diener Methode immer automatisch eine neue Regel. Was sich bei mir jedoch nciht ändert ist der Maximalwert $A$1 der in der Regel drin steht. Den kopiert er bei mir mit.
Hab ich da was falsch gemacht?
 
Grüezi Carndret

Du willst ja eigentlich einen relativen Bezug haben - warum gibst Du dann einen absoluten ($A$1) an?

Mach da mal A1 draus, dann sollte es passen (hat bei mir jedenfalls getan).
 
An die 100 Zeilen und das manuell, seid ihr verrückt? :D
Ich persönlich würde es mit einem Makro machen, welches im Code des Tabellenblattes gespeichert wird. Hier ein Beispiel mit Grüner Schrift: (so funktioniert es zumindest in Office 2003)
Code:
'Wird aufgerufen, wenn sich der Inhalt einer Zelle ändert
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not IsArray(Target) And Target.Column = 2 Then
        If Target.Value = "" Then
            Target.FormatConditions.Delete
        Else
            If Target.FormatConditions.Count = 0 Then
                Target.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, Formula1:="$A$" & Target.Row
                Target.FormatConditions(1).Font.ColorIndex = 50
            End If
        End If
    End If
End Sub
 
@Thomas: welche Version von Excel hast du? Wenn ich nämlich nur =A1 beim maximal Wert eingebe kommt die Meldung, dass der Wert nicht relativ sein darf.

Die Sache mit dem Makro hatte ich mir auch schon überlegt (Danke schon mal für den Code!!). Ansonsten machs ichs irgendwie anders...
 

Neue Beiträge

Zurück