ExcelVBA运用Excel的【条件格式】(四)

|---------------------------------------|
| 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参数是必需的,它是一个长整型,表示要高亮显示的值的数量或百分比。当PercentFalse时,这是具体数量(如10表示前10个值);当PercentTrue时,这是百分比(如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

【拓展】

以上代码你会写吗?想想

====若有用,请转发免费学习====

关注看更多文章

Excel VBA代码合集

相关推荐
刘_sy7 小时前
使用EasyExcel和多线程实现高效数据导出
java·excel·easyexcel·批量导出excel
PowerBI学谦13 小时前
Copilot:Excel中的Python高级分析来了
python·excel·copilot
E-iceblue2 天前
Python 合并 Excel 单元格
python·excel·合并
sszdzq2 天前
Excel 合并列数据
excel
prince_zxill2 天前
Excel中不用复杂公式根据指定X列的数值N复制整行数据N行简单方法
excel
VBAMatrix3 天前
DeepSeek操作Excel,实现图表自动化生成
运维·自动化·excel·wps·deepseek
一醉千秋3 天前
excel中单元格字符串提取数字累加
excel
VB.Net3 天前
19.4.9 数据库方式操作Excel
数据库·c#·excel
真就死难3 天前
CSV格式和普通EXCEL格式文件的区别
linux·excel
朵朵zeng3 天前
Excel文件的读取
python·excel