Vba: bedingte formatierung auf doppelte werte anwenden


Sie können die folgende grundlegende Syntax in VBA verwenden, um eine bedingte Formatierung auf doppelte Werte in einem bestimmten Bereich anzuwenden:

 Sub ConditionalFormatDuplicates()

Dim rg As Range
Dim uv As UniqueValues

'specify range to apply conditional formatting
Set rg = Range(" A2:A11 ")

'clear any existing conditional formatting
rg.FormatConditions.Delete

'identify duplicate values in range A2:A11
Set uv = rg.FormatConditions.AddUniqueValues
uv.DupeUnique = xlDuplicate

'apply conditional formatting to duplicate values
uv.Interior.Color = vbBlue
uv.Font.Color = vbWhite
uv.Font.Bold = True

End Sub

In diesem speziellen Beispiel wird die bedingte Formatierung auf doppelte Werte im Bereich A2:A11 des aktuellen Blatts in Excel angewendet.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Verwenden Sie VBA, um bedingte Formatierung auf doppelte Werte anzuwenden

Angenommen, wir haben die folgende Wertespalte in Excel:

Angenommen, wir möchten die folgende bedingte Formatierung auf die doppelten Werte in Spalte A anwenden:

  • Blauer Hintergrund
  • Schwarzer Text
  • Fettgedruckter Text

Dazu können wir das folgende Makro erstellen:

 Sub ConditionalFormatDuplicates()

Dim rg As Range
Dim uv As UniqueValues

'specify range to apply conditional formatting
Set rg = Range(" A2:A11 ")

'clear any existing conditional formatting
rg.FormatConditions.Delete

'identify duplicate values in range A2:A11
Set uv = rg.FormatConditions.AddUniqueValues
uv.DupeUnique = xlDuplicate

'apply conditional formatting to duplicate values
uv.Interior.Color = vbBlue
uv.Font.Color = vbWhite
uv.Font.Bold = True

End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass die bedingte Formatierung auf jede Zelle in Spalte A mit einem doppelten Wert angewendet wird.

Wenn Sie die bedingte Formatierung auf einen anderen Zellbereich anwenden möchten, ersetzen Sie einfach A2:A11 im Makro durch einen anderen Bereich.

Wenn Sie außerdem alle bedingten Formatierungen aus Zellen im aktuellen Blatt entfernen möchten, können Sie dazu das folgende Makro erstellen:

 Sub RemoveConditionalFormatting()
ActiveSheet.Cells.FormatConditions.Delete
End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass jegliche bedingte Formatierung aus den Zellen entfernt wurde.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in VBA ausführen:

VBA: So zählen Sie eindeutige Werte im Bereich
VBA: So zählen Sie Zellen mit bestimmtem Text
VBA: So schreiben Sie COUNTIF- und COUNTIFS-Funktionen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert