Im Folgenden an einem Programm in Excel VBA, dass die Farben der Maximalwert eines dynamischen Bereich aussehen wird.

Situation:

Jedes Mal, wenn wir eine Reihe hinzuzufügen und wir die Befehlsschaltfläche klicken, möchten wir Excel VBA den maximalen Wert dieser Zahlen färben.

Dynamic Range in Excel VBA

Platzieren Sie eine Befehlstaste auf dem Arbeitsblatt und fügen Sie die folgenden Codezeilen:

  1. Zuerst erklären wir eine Variable und zwei Range-Objekte. Eine Variable vom Typ Double nennen wir Maximum. Wir rufen die Range-Objekte rng und Zelle.

Dim maximum As Double, rng As Range, cell As Range
  1. Wir fügen Sie die Zeile, die die Hintergrundfarbe aller Zellen auf ‚No Fill‘ ändert.

Cells.Interior.ColorIndex = 0
  1. Wir initialisieren rng mit den Zahlen. Wir verwenden die Current Eigenschaft für diese. Current ist nützlich, wenn wir nicht wissen, die genauen Grenzen eines Bereichs im Voraus.

Set rng = Range("A1").CurrentRegion
  1. Wir initialisieren mit dem Maximalwert der Zahlen Maximum. Wir verwenden die Tabellenfunktion Max den Maximalwert zu finden.

maximum = WorksheetFunction.Max(rng)
  1. Schließlich haben wir den maximalen Wert färben. Wir verwenden eine For Each Next-Schleife.

For Each cell In rng

If cell.Value = maximum Then cell.Interior.ColorIndex = 22

Next cell

Hinweis: anstelle von Color Nummer 22 (rot), können Sie eine beliebige Colornummer verwenden.

  1. Nummer hinzufügen.

Ergebnis, wenn Sie auf das Befehlsschaltflächen auf dem Blatt klicken:

Dynamic Range Result