Einrichten der bedingten Formatierung für einen Bereich mit VBA in Microsoft Excel

Anonim

In diesem Artikel erstellen wir ein Makro, um die bedingte Formatierung im ausgewählten Bereich anzuwenden.

Wir haben Zufallszahlen als Beispieldaten verwendet, um die Funktionsweise des Makros zu demonstrieren.

Das Makro kann durch Klicken auf die Schaltfläche „Find Max“ auf der „Main“-Seite ausgeführt werden.

Logikerklärung

Wir haben das Makro „ConditionalFormat“ erstellt, um die bedingte Formatierung auf den ausgewählten Bereich anzuwenden. Dieses Makro hebt die Zelle in violetter Farbe hervor, die den maximalen Wert im ausgewählten Bereich enthält.

Vor der Ausführung dieses Makros muss man einen Bereich auswählen, auf den man die bedingte Formatierung anwenden möchte.

Als Beispiel für die ausgewählten Daten haben wir beispielsweise einen Zellbereich von B9 bis F17 ausgewählt.

Beim Ausführen des Makros nach der Auswahl des Probenbereichs wird die bedingte Formatierung auf den ausgewählten Bereich angewendet und die Zelle D16, die den höchsten Wert (97) enthält, wird violett hervorgehoben.

Nehmen Sie nun eine weitere Probe. Als zweiten Probenbereich haben wir den Bereich von Zelle B10 bis F13 gewählt.

Nachdem Sie den zweiten Beispielbereich ausgewählt haben, klicken Sie auf die Schaltfläche „Find Max“, um das Makro auszuführen. Die bedingte Formatierung wird auf den ausgewählten Bereich angewendet und die Zelle C11 wird violett hervorgehoben, da sie den Maximalwert (92) im ausgewählten Bereich enthält.

Nachdem das Makro für zwei verschiedene Beispiele ausgeführt wurde, wird die bedingte Formatierung auf beide angewendet. In den Probendaten werden sowohl die Zellen C11 als auch D16 violett hervorgehoben, da sie die Maximalwerte in ihren jeweiligen Proben darstellen.

Wenn Werte in einem der Samples geändert werden und einer der neu eingefügten Werte der höchste Wert ist, wird die Zelle mit diesem bestimmten Wert hervorgehoben.

Codeerklärung

Auswahl.FormatBedingungen.Löschen

Der obige Code wird verwendet, um alle auf die ausgewählten Daten angewendeten bedingten Formatierungen zu löschen.

Selection.FormatConditions.Add Typ:=xlExpression, Formula1:= _

"=" & Selection.Cells(1).Address(False, False) & "=MAX(" & Selection.Address & ")"

Der obige Code wird verwendet, um eine neue bedingte Formatierung hinzuzufügen. Typ gibt an, dass Ausdruck verwendet wird, um die Bedingungsformatierung anzuwenden. Die Formel des Ausdrucks ist in Formel1 definiert.

Auswahl.Zellen(1).Adresse(Falsch,Falsch)

Der obige Code wird verwendet, um auf die Adresse der ersten Zelle in der Auswahl zu verweisen.

"=" & Selection.Cells(1).Address(False, False) & "=MAX(" & Selection.Address & ")"

Der obige Code wird verwendet, um den Wert der ersten ausgewählten Zelle mit dem maximalen Wert der Auswahl zu vergleichen.

Selection.FormatConditions(1).Interior.ColorIndex = 39

Der obige Code wird verwendet, um der Zelle eine violette Farbe zuzuweisen, die die Bedingung der Formatierung erfüllt.

Bitte folgen Sie unten für den Code

 Sub ConditionalFormat() With Selection 'Alle vorherigen bedingten Formatierungen löschen , False) & "=MAX(" & Selection.Address & ")" 'Violett Farbe für die bedingte Formatierung zuweisen .FormatConditions(1).Interior.ColorIndex = 39 End With End Sub 

Wenn Ihnen dieser Blog gefallen hat, teilen Sie ihn mit Ihren Freunden auf Facebook. Außerdem können Sie uns auf Twitter und Facebook folgen.

Wir würden uns freuen, von Ihnen zu hören, lassen Sie uns wissen, wie wir unsere Arbeit verbessern und für Sie verbessern können. Schreiben Sie uns auf der E-Mail-Site