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代码合集

相关推荐
神奇夜光杯10 分钟前
Python酷库之旅-第三方库Pandas(202)
开发语言·人工智能·python·excel·pandas·标准库及第三方库·学习与成长
小c君tt1 小时前
MFC中Excel的导入以及使用步骤
c++·excel·mfc
一名技术极客3 小时前
Vue2 doc、excel、pdf、ppt、txt、图片以及视频等在线预览
pdf·powerpoint·excel·文件在线预览
用余生去守护4 小时前
【反射率】-- Lab 转换(excel)
excel
进击的六角龙4 小时前
Python中处理Excel的基本概念(如工作簿、工作表等)
开发语言·python·excel
TracyDemo4 小时前
excel功能
excel
lc寒曦4 小时前
【VBA实战】用Excel制作排序算法动画
排序算法·excel·vba
zzzgd8164 小时前
easyexcel实现自定义的策略类, 最后追加错误提示列, 自适应列宽,自动合并重复单元格, 美化表头
java·excel·表格·easyexcel·导入导出
努力学习技能的LY4 小时前
Excel:vba实现批量插入图片批注
excel
图片转成excel表格5 小时前
wps怎么算出一行1和0两种数值中连续数值1的个数,出现0后不再计算?
excel·wps