How to apply conditional formatting for only visible cells?

依然范特西╮ 提交于 2019-12-02 15:16:11

问题


I am using Excel-2010, I have applied 3scale conditional formatting for Excel range A1:F100, on a Dropdown macro hide/unhide will be actioned, and hide/unhide is not sequential, for eg:- Rows 1,10,30,54,67,88 may only visible.

So for only these visible rows, the same conditional format should Work.

I have tried browsing to find it, but i couldn't get the required.

Help is much Appreciated.

Thanks in advance.


回答1:


As commented, it should be something like this:

Sub ject()
    Dim rng As Range
    With Sheet1 '~~> change to your actual sheet
        .Range("A1:F100").FormatConditions.Delete
        Set rng = .Range("A1:F100").SpecialCells(xlCellTypeVisible)
        .Range("A1").FormatConditions.AddColorScale 3
        With .Range("A1").FormatConditions(1)
            With .ColorScaleCriteria(1)
                .Type = xlConditionValueLowestValue
                .FormatColor.Color = RGB(255, 0, 0)
            End With
            With .ColorScaleCriteria(2)
                .Type = xlConditionValuePercentile
                .FormatColor.Color = RGB(255, 255, 0)
            End With
            With .ColorScaleCriteria(3)
                .Type = xlConditionValueHighestValue
                .FormatColor.Color = RGB(0, 255, 0)
            End With
            .ModifyAppliesToRange rng
        End With
    End With
End Sub

Everytime this routine is run or called, it re-applies formatting to visible ranges.
It can be incorporated to an existing code or run separately. HTH.




回答2:


There is a possibility with SUBTOTAL formulas for Minimum, Midpoint and Maximum.

Minimum: Type = Formula, =SUBTOTAL(105,$A$1:$F$100)

Midpoint: Type = Formula, =MEDIAN(IF((SUBTOTAL(103,INDIRECT("A"&ROW($1:$100)))>0)*($A$1:$F$100<>""),$A$1:$F$100))

Maximum: Type = Formula, =SUBTOTAL(104,$A$1:$F$100)

If you could accept the average of the values instead the 50% percentile as the Midpoint, the formula for Midpoint would be simpler:

=SUBTOTAL(101,$A$1:$F$100)

Greetings

Axel



来源:https://stackoverflow.com/questions/25660087/how-to-apply-conditional-formatting-for-only-visible-cells

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!