Vba: cara menyorot n nilai pertama di kolom


Anda dapat menggunakan sintaks berikut di VBA untuk menyorot N nilai pertama kolom di Excel:

 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

Makro khusus ini akan menyorot 3 nilai tertinggi dalam rentang A2:A11 .

Untuk menyorot sejumlah nilai atas yang berbeda, cukup edit baris Untuk i = 1 Sampai 3 untuk mendapatkan batas atas yang berbeda.

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Sorot N Nilai Pertama di Kolom Menggunakan VBA

Misalkan kita memiliki nilai berikut di kolom A spreadsheet Excel kita:

Kita dapat membuat makro berikut untuk menyorot 3 nilai terbesar pertama dalam rentang A2:A11 :

 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

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

VBA menyoroti N nilai pertama di kolom

Perhatikan bahwa sel yang berisi 3 nilai tertinggi di kolom A sekarang disorot.

Perhatikan bahwa Anda juga dapat mengubah warna yang akan digunakan untuk menyorot serta jumlah nilai utama yang akan disorot.

Misalnya, kita bisa menggunakan makro berikut untuk menyorot 5 nilai pertama di kolom A dengan warna hijau:

 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

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Perhatikan bahwa sel yang berisi 5 nilai tertinggi di kolom A sekarang disorot dengan warna hijau.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di VBA:

VBA: Cara menerapkan pemformatan bersyarat ke sel
VBA: Cara menerapkan pemformatan bersyarat ke nilai duplikat
VBA: Cara mencari nilai dalam kolom

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *