Vba: як виділити перші n значень у стовпці
Ви можете використовувати такий синтаксис у VBA, щоб виділити перші N значень стовпця в 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
Цей конкретний макрос виділить 3 найвищі значення в діапазоні A2:A11 .
Щоб виділити іншу кількість верхніх значень, просто відредагуйте рядок For i = 1 To 3 , щоб мати іншу верхню межу.
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: виділіть перші N значень у стовпці за допомогою VBA
Припустимо, у стовпці A нашої електронної таблиці Excel є такі значення:
Ми можемо створити наступний макрос, щоб виділити перші 3 найбільші значення в діапазоні 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
Коли ми запускаємо цей макрос, ми отримуємо такий результат:
Зверніть увагу, що клітинки, які містять 3 найвищі значення в стовпці A, тепер виділені.
Зверніть увагу, що ви також можете змінити колір для виділення, а також кількість основних значень для виділення.
Наприклад, ми можемо використовувати наступний макрос, щоб виділити перші 5 значень у стовпці A зеленим кольором:
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
Коли ми запускаємо цей макрос, ми отримуємо такий результат:
Зверніть увагу, що клітинки, які містять 5 найвищих значень у стовпці A, тепер виділені зеленим кольором.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: як застосувати умовне форматування до клітинок
VBA: як застосувати умовне форматування до повторюваних значень
VBA: як знайти значення в стовпці