Vba: so markieren sie die ersten n-werte in einer spalte
Sie können die folgende Syntax in VBA verwenden, um die ersten N Werte einer Spalte in Excel hervorzuheben:
 SubHighlightTopN ()
    Dim rng As Range
    Dim EntireRange As Range
    
    'specify range to use
    Set EntireRange = Range(" A2:A11 ")
    
    'highlight top 3 values in range
    For Each rng In EntireRange
        
        For i = 1 To 3
        
        If rng.Value = WorksheetFunction.Large(EntireRange, i) Then
        rng.Interior.Color = vbYellow
        End If
        Next
    
    Next rng
End Sub
Dieses spezielle Makro hebt die drei höchsten Werte im Bereich A2:A11 hervor.
Um eine andere Anzahl von Oberwerten hervorzuheben, bearbeiten Sie einfach die Zeile „Für i = 1 bis 3“ , um eine andere Obergrenze zu erhalten.
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Markieren Sie die ersten N Werte in der Spalte mithilfe von VBA
Angenommen, wir haben die folgenden Werte in Spalte A unserer Excel-Tabelle:

Wir können das folgende Makro erstellen, um die ersten drei größten Werte im Bereich A2:A11 hervorzuheben:
 SubHighlightTopN ()
    Dim rng As Range
    Dim EntireRange As Range
    
    'specify range to use
    Set EntireRange = Range(" A2:A11 ")
    
    'highlight top 3 values in range
    For Each rng In EntireRange
        
        For i = 1 To 3
        
        If rng.Value = WorksheetFunction.Large(EntireRange, i) Then
        rng.Interior.Color = vbYellow
        End If
        Next
    
    Next rng
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass die Zellen mit den drei höchsten Werten in Spalte A jetzt hervorgehoben sind.
Beachten Sie, dass Sie auch die zum Hervorheben verwendete Farbe sowie die Anzahl der hervorzuhebenden Primärwerte ändern können.
Mit dem folgenden Makro können wir beispielsweise die ersten 5 Werte in Spalte A grün hervorheben:
 SubHighlightTopN ()
    Dim rng As Range
    Dim EntireRange As Range
    
    'specify range to use
    Set EntireRange = Range(" A2:A11 ")
    
    'highlight top 5 values in range
    For Each rng In EntireRange
        
        For i = 1 To 5
        
        If rng.Value = WorksheetFunction.Large(EntireRange, i) Then
        rng.Interior.Color = vbGreen
        End If
        Next
    
    Next rng
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass die Zellen mit den fünf höchsten Werten in Spalte A jetzt grün hervorgehoben sind.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in VBA ausführen:
 VBA: So wenden Sie bedingte Formatierung auf Zellen an
 VBA: So wenden Sie bedingte Formatierung auf doppelte Werte an
 VBA: So finden Sie den Wert in einer Spalte