Этот код VBA (Macro) поможет вам автоматически выделить максимальные и минимальные значения в активном листе.
Вместо использования жестко закодированных диапазонов данных код перебирает все используемые столбцы и корректирует их для получения различной длины.
Кроме того, я предполагаю заголовки в активном листе.
Private Sub Worksheet_Activate() Dim Myrng As Range Dim rng As Range Dim lCol As Long Dim lLastRow As Long ActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNone With ActiveSheet For lCol = 2 To .UsedRange.Columns.Count lLastRow = .Cells(.Rows.Count, lCol).End(xlUp).Row Set rng = .Range(.Cells(2, lCol), .Cells(lLastRow, lCol)) For Each Myrng In rng If Myrng.value = Application.WorksheetFunction.Max(rng) Then Myrng.Interior.ColorIndex = 6 End If If Myrng.value = Application.WorksheetFunction.Min(rng) Then Myrng.Interior.ColorIndex = 10 End If Next Next lCol End With End Sub
Как это устроено:
- Скопируйте и вставьте этот код VBA как стандартный модуль вместе с листом.
- Код выделит значения Max и Min в каждом столбце для используемого диапазона на листе, как только вы активируете его (при щелчке мышью на вкладке листа).
- Отрегулируйте цвет фона по мере необходимости.