Excel按颜色筛选需先启用筛选,再通过下拉箭头选“按颜色筛选”→“单元格/字体颜色”,或右键选“按所选单元格颜色筛选”,亦可用查找功能定位同色单元格,复杂条件格式则需VBA辅助列提取DisplayFormat颜色值。

如果您在Excel中已为单元格设置了背景色、字体颜色或条件格式图标,但无法快速提取对应颜色的数据行,则可能是筛选功能未启用、颜色来源不符合识别条件,或操作路径不完整。以下是实现按颜色筛选的具体步骤:
一、启用筛选并使用下拉箭头按单元格背景色筛选
该方法调用Excel原生自动筛选机制,适用于手动填充色、条件格式生成的纯色背景(部分版本支持),可即时隐藏非目标色行,保持原始数据结构与公式引用完整性。
1、选中数据区域中任意一个含标题的单元格(如A1或数据区首行任一单元格)。
2、切换到【数据】选项卡,点击【筛选】按钮;或直接按快捷键 Ctrl + Shift + L,使各列标题右侧出现下拉箭头。
3、单击目标列(如“状态”或“审核结果”)标题旁的下拉箭头。
4、将鼠标悬停于【按颜色筛选】选项上。
5、在展开子菜单中选择【单元格颜色】。
6、点击目标颜色方块(如红色填充色块),Excel立即仅显示该背景色所在整行。
二、启用筛选并使用下拉箭头按字体颜色筛选
此方法独立于背景色设置,专用于依据文字颜色定位数据行,例如红色字体标示异常、绿色字体标示已完成,系统以单元格首个字符的字体颜色为判定依据。
1、确认目标列中存在已应用字体颜色的单元格(如深蓝色字体)。
2、单击该列标题右侧的筛选下拉箭头。
3、将鼠标移至【按颜色筛选】选项。
4、点击【字体颜色】。
5、在弹出的颜色面板中,选择与目标文字一致的字体颜色(如深绿色字体色块)。
三、右键快捷筛选指定颜色单元格
无需预先启用筛选功能,适用于单次快速定位某一个已着色单元格所代表的颜色类别,尤其适合颜色分散、临时核查场景,操作路径最短。
1、在表格中找到任意一个具有目标背景色的单元格(如黄色标记项)。
2、右键单击该单元格。
3、在弹出菜单中依次选择【筛选】→【按所选单元格颜色筛选】。
4、Excel立即隐藏所有非该背景色的行,仅保留匹配行。
四、使用查找功能批量定位同色单元格
该方法不改变当前视图结构,而是通过查找引擎跨区域识别全部匹配颜色的单元格地址,适合需复制、求和、高亮或进一步处理的场景,且支持分别定位背景色与字体颜色。
1、按下 Ctrl + F 打开【查找】对话框。
2、点击右下角【选项】按钮展开高级设置。
3、点击【格式】→【从单元格选择格式】,再用吸管工具点选表格中任一目标黄色背景色单元格。
4、点击【全部查找】,Excel在下方列出所有匹配单元格的地址与值。
5、在查找结果窗格中按 Ctrl + A 全选,所有匹配单元格将被高亮显示。
五、构建辅助列配合VBA函数获取DisplayFormat颜色值
该方法可稳定识别条件格式动态生成的颜色(依赖DisplayFormat属性),适用于颜色非手动设置、原生筛选失效的复杂场景,需启用宏并信任工作簿。
1、按 Alt + F11 打开VBA编辑器,右键【正常】工程 → 【插入】→ 【模块】。
2、粘贴以下代码:
Function GetCellColor(r As Range) As Long
GetCellColor = r.DisplayFormat.Interior.ColorIndex
End Function
3、返回Excel,在空白辅助列(如Z2)输入公式 =GetCellColor(A2)(假设A2为目标单元格)。
4、将该公式向下填充至整列,得到每行对应的颜色索引编号。
5、对该辅助列启用筛选,按具体数值(如3代表红色)筛选,同步观察原始数据行。


















