|---------------------------------------|
| ExcelVBA运用Excel的【条件格式】(四) |
| 条件格式FormatConditions.AddTop10
方法 |
【问题】
快速定位到数据的前10或后10
【效果图】
如图
【知识点】
在VBA中,FormatConditions.AddTop10
方法用于向Range对象添加一个基于最高或最低数值的条件格式规则。该方法属于FormatConditions
集合,通常用于在数据集中高亮显示前10个或前10%的值。
用于在Excel工作表的指定范围内添加一个条件格式规则,该规则会高亮显示前10个最高值或最低值的单元格。你也可以选择使用百分比来表示前10%或后10%的数据。
其语法如下:
php
RangeObject.FormatConditions.AddTop10(TopBottom As XlTopBottom, Percent As Boolean, Position As Long)
其中:
-
TopBottom
参数是必需的,它是一个枚举类型XlTopBottom
,用于指定是显示前10个最高值 (xlTop10Top
) 还是前10个最低值 (xlTop10Bottom
)。 -
Percent
参数也是必需的,它是一个布尔值,用于确定Position参数是表示绝对数量还是百分比。如果为True
,则Position被视为百分比;如果为False
,则Position被视为具体数量。 -
Position
参数是必需的,它是一个长整型,表示要高亮显示的值的数量或百分比。当Percent
为False
时,这是具体数量(如10表示前10个值);当Percent
为True
时,这是百分比(如10表示前10%的值)。
【我的代码】
php
Sub AddTop10FormatCondition定位前10位()
Dim ws As Worksheet
Dim rng As Range
' 设置工作表
' Set ws = ThisWorkbook.Sheets("Sheet1")
Set ws = ActiveSheet
' 清除之前的条件格式
ws.Cells.FormatConditions.Delete
' 设置要应用条件格式的范围
' Set rng = ws.Range("A1:F20")
Set rng = ws.UsedRange.Cells
' 添加前10项的条件格式
' 注意:这里的参数 TopBottom 设置为 xlTop10Top 表示前10项
' Percent 设置为 True 表示基于百分比(即前10%的项),如果设置为 False,则表示具体的前10项
' Rank 设置为 10 表示前10项(或前10%)
With rng.FormatConditions.AddTop10
.TopBottom = xlTop10Top
.Percent = False ' 使用具体数量而非百分比
.rank = 10
.Interior.Color = RGB(255, 255, 0) ' 设置背景色为黄色
End With
' 清除任何现有的条件格式(可选,如果你只想保留这一个条件格式)
' rng.FormatConditions.Delete
End Sub
【拓展】
以上代码你会写吗?想想
====若有用,请转发免费学习====
关注看更多文章