Excel实例下载
  VBA  应用教程
    数据库SQL知识
设为首页
按颜色筛选数据
作者:bengdeng | 来源:Excel吧 | 时间:2005-12-26 | 阅读权限:游客 | 会员币:0 | 【
    在使用Excel时,我们经常用设定单元格的颜色来区分一些内容,或者用颜色来标记一些相关的数据,而这时如果要将这些按填充颜色筛选出来,用平常的筛选又怎么做呢?
    这个问题可以插入一个辅助列来解决,而且还要用到EXCEL4.0的一个宏表函数:GET.CELL,现在的版本已经不能直接使用这个函数了,只能通过定义名称的办法间接使用。如果以填充颜色进行筛选,就要先通过GET.CELL宏表函数求出颜色值,然后再以这个值来进行筛选。具体步骤:
    假设需要筛选的数据在表1的A列
    1、活动单元格置于B1,在插入-名称-定义里定义一个名称,X=GET.CELL(38,SHEET1!A1)。
    2、在B1中输入=X。
    但一些时候,我们不希望插入一个辅助列,这时就只能用VBA来解决这个问题了。下面这段代码可以实现,除首行外,将当前单元格所在列数据与当前单元格不同颜色的行隐藏起来!
数据首行为标题列,如有其它情况或想法,请自行修改代码。

Sub FilterColor()
Dim UseRow, AC
UseRow = Cells.SpecialCells(xlCellTypeLastCell).Row
If ActiveCell.Row > UseRow Then
 MsgBox "请在要筛选的区域选择颜色条件格!", vbExclamation, "错误"
Else
 AC = ActiveCell.Column
 Cells.EntireRow.Hidden = False
 For i = 2 To UseRow
 If Cells(i, AC).Interior.ColorIndex <> ActiveCell.Interior.ColorIndex Then
 Cells(i, AC).EntireRow.Hidden = True
 End If
 Next
End If
End Sub

使用方法:先把条件颜色的单元格设定为当前单元格,再运行此宏即可。
附上Get.Cell的各参数代表的意义:
1 参照储存格的绝对地址
2 参照储存格的列号
3 参照储存格的栏号
4 类似 TYPE 函数
5 参照地址的内容
6 文字显示参照地址的公式
7 参照地址的格式,文字显示
8 文字显示参照地址的格式
9 传回储存格外框左方样式,数字显示
10 传回储存格外框右方样式,数字显示
11 传回储存格外框方上样式,数字显示
12 传回储存格外框方下样式,数字显示
13 传回内部图样,数字显示
14 如果储存格被设定 locked传回 True
15 如果公式处于隐藏状态传回 True
16 传回储存格宽度
17 以点为单位传回储存格高度
18 字型名称
19 以点为单位传回字号
20 如果储存格所有或第一个字符为加粗传回 True
21 如果储存格所有或第一个字符为斜体传回 True
22 如果储存格所有或第一个字符为单底线传回True
23 如果储存格所有或第一个字符字型中间加了一条水平线传回 True
24 传回储存格第一个字符色彩数字, 1 至 56。如果设定为自动,传回 0
25 MS Excel不支持大纲格式
26 MS Excel不支持阴影格式
27 数字显示手动插入的分页线设定
28 大纲的列层次
29 大纲的栏层次
30 如果范围为大纲的摘要列则为 True
31 如果范围为大纲的摘要栏则为 True
32 显示活页簿和工作表名称
33 如果储存格格式为多行文字则为 True
34 传回储存格外框左方色彩,数字显示。如果设定为自动,传回 0
35 传回储存格外框右方色彩,数字显示。如果设定为自动,传回 0
36 传回储存格外框上方色彩,数字显示。如果设定为自动,传回 0
37 传回储存格外框下方色彩,数字显示。如果设定为自动,传回 0
38 传回储存格前景阴影色彩,数字显示。如果设定为自动,传回 0
39 传回储存格背影阴影色彩,数字显示。如果设定为自动,传回 0
40 文字显示储存格样式
41 传回参照地址的原始公式
42 以点为单位传回使用中窗口左方至储存格左方水平距离
43 以点为单位传回使用中窗口上方至储存格上方垂直距离
44 以点为单位传回使用中窗口左方至储存格右方水平距离
45 以点为单位传回使用中窗口上方至储存格下方垂直距离
46 如果储存格有插入批注传回 True
47 如果储存格有插入声音提示传回 True
48 如果储存格有插入公式传回 True
49 如果储存格是数组公式的范围传回 True
50 传回储存格垂直对齐,数字显示
51 传回储存格垂直方向,数字显示
52 传回储存格前缀字符
53 文字显示传回储存格显示内容
54 传回储存格数据透视表名称
55 传回储存格在数据透视表的位置
56 枢纽分析
57 如果储存格所有或第一个字符为上标传回True
58 文字显示传回储存格所有或第一个字符字型样式
59 传回储存格底线样式,数字显示
60 如果储存格所有或第一个字符为下标传回True
61 枢纽分析
62 显示活页簿和工作表名称
63 传回储存格的填满色彩
64 传回图样前景色彩
65 枢纽分析
66 显示活页簿名称
文章录入:admin | 浏览次数:
相关评论(以下网友评论只代表其个人观点,不代表Excel吧的观点或立场)
相关信息

关于本站 | 留言本站 | 友情连接 | 后台管理
Copyright © 2005 - 2008 Excel吧 Inc. All Rights Reserved.
HxCms Ver9.0  闽ICP备06001689号
关闭此窗口