Страницы: 1
RSS
Как выделить цветом столбец с фильтром
 
Мне надо чтобы столбец или несколько, на котором есть фильтр, выделялся цветом чтобы не терять в большой таблице. Подскажите как сделать, а-то так плохо себя чувствуешь когда забудешь, особенно если вообще не знал...
 
Ну как вариант так:
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Filter
y = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 1 To y
    Columns(i).Interior.Pattern = xlNone
    On Error GoTo e:
    If ActiveSheet.AutoFilter.FilterMode Then
        Set x = ActiveSheet.AutoFilter.Filters(i)
            If x.On Then
                Columns(i).Interior.Color = RGB(87, 240, 26)
            End If
    End If
Next
e:
End Sub
только срабатывать будет при перевыборе выделения.
 
... или таким образом ... срабатывать будет при 'Calculation Event' ('Событие расчёта' ?), но нужна ещё будет ячейка с гашеткой (триггером) - функция «SUBTOTAL» для автофильтра:
Код
Private Sub Worksheet_Calculate()
    Call abc_xyz
End Sub

Sub abc_xyz()
    With ActiveSheet
        If .AutoFilterMode Then
            Range("A1").CurrentRegion.Interior.Color = xlNone
            If .AutoFilter.FilterMode Then
                Dim i%, fltr
                For Each fltr In .AutoFilter.Filters
                    i = i + 1
                    If fltr.On Then Range("A1").CurrentRegion.Columns(i).Interior.Color = RGB(87, 240, 26)
                Next
            End If
        Else
            Range("A1").CurrentRegion.Interior.Color = xlNone
        End If
    End With
End Sub
 
Вот огромное вам спасибо!!!
Это прямо шоколад шоколадный!
Страницы: 1
Наверх