Excel 排序、筛选、高级筛选与去重的正确做法
适用场景
表格行数一多,靠眼睛找数据就容易出错。排序用来按某个字段重排记录,筛选用来只看符合条件的行,高级筛选适合多条件组合,删除重复值用来清理导入的数据。这一页的重点不是按钮在哪,而是怎样避免只排一列导致整行错位。
排序
单列与多列排序
- 点数据区域里的任意一个单元格。
- “数据 → 排序”。
- 在“主要关键字”选列,在“次序”选升序、降序或自定义序列。
- 需要按第二、第三关键字排序时点“添加条件”。
只要数据区域是连续的,Excel 会自动识别整张表并按整行移动。排序前确认三件事:
- 表头是否只有一行,且没有合并单元格;
- 数据中间是否有空行或空列;
- 是否有公式引用了行号,排序后公式可能跟着移动。
自定义序列
“数据 → 排序 → 次序 → 自定义序列”可以按“低、中、高”或“一月、二月、三月”这样的业务顺序排,而不是按拼音或笔画。自定义序列在“文件 → 选项 → 高级 → 编辑自定义列表”里维护。
按颜色或图标排序
“数据 → 排序 → 排序依据”可以选“单元格颜色”“字体颜色”或“条件格式图标”。适合先看异常项,但不要把颜色当成唯一的数据来源;颜色规则一变,排序结果就失去意义。
筛选
自动筛选
- 选中表头任意单元格。
- 按
Ctrl+Shift+L,或“数据 → 筛选”。
- 点列标题上的下拉箭头,按文本、数字、日期或颜色筛选。
常用技巧:
- 搜索框里输入关键词,比在长列表里翻快得多;
- “文本筛选 → 包含/不包含/开头是/结尾是”支持通配符
* 和 ?;
- 数字筛选支持大于、小于、介于、前 10 项、高于平均值;
- 日期筛选可以按年、月、季度、介于、之前、之后;
- 按颜色筛选依赖单元格颜色或条件格式图标,颜色来源变了结果也会变;
- 筛选后状态栏会显示“筛选模式”,复制时只复制可见单元格。
高级筛选
高级筛选把条件写在表格上方的独立区域,适合多条件“且/或”组合。
条件区域示例(A1:B3):
地区 销售额
华东 >10000
地区 销售额
华东 >10000
华南 >10000
- 同一行条件是“且”(华东且大于 10000);
- 不同行条件是“或”(华东大于 10000,或华南大于 10000);
- 条件区域必须包含表头,表头文字要和数据表一致;
- 勾选“将筛选结果复制到其他位置”可以把结果放到新区域,勾选“选择不重复的记录”可以顺便去重;
- 条件里可以用公式,公式结果必须是
TRUE/FALSE,且引用方式要相对当前行。
删除重复值
“数据 → 删除重复值”会保留第一次出现的记录,删除后续重复项。操作前先复制一份原始数据,因为删除后只能用撤销恢复。
- 只勾选真正决定重复的列。例如订单表只按“订单号”去重,不要把所有列都勾上;
- 删除重复值会直接改原表,不会生成新表;
- 需要保留“最新一条”时,先按时间降序排序,再去重;
- Excel 365/2021 可以用
UNIQUE 函数生成去重后的新列表,原数据不动,见 excel-dynamic-arrays。
易错点
- 只选一列排序:如果只选中 C 列后点排序,Excel 会问“扩展选定区域”还是“以当前选定区域排序”。选后者只排 C 列,其他列不动,整行数据立刻错位。正确做法是点数据区域内任意单元格再排序。
- 合并单元格:排序和筛选都会报错或只处理部分行。先取消合并并填充空白。
- 隐藏行:排序会带上隐藏行;筛选后复制默认只复制可见行,但排序不会。
- 筛选后粘贴:把数据粘贴到筛选后的区域,可能写进隐藏行。先取消筛选,或只粘贴到可见单元格。
- 空格和不可见字符:
"华东" 和 "华东 " 会被当成两个值。用 TRIM 清理普通空格,用 CLEAN 去掉不可打印字符,必要时用 SUBSTITUTE 替换不换行空格 CHAR(160)。
- 数字存成文本:筛选“大于 10000”时文本数字不参与数值比较;先转换类型。
- 表格自动扩展:把区域转成“表格”(
Ctrl+T)后,新增行会自动纳入筛选和公式;普通区域不会自动扩展,透视表刷新时容易漏数据。
相关条目
参考链接
读完自测
合上页面,先回答,再展开对照。
- 为什么只选中一列点“排序”很容易把整行数据弄错位?
- 高级筛选里,同一行条件和不同行条件分别代表什么?
- “删除重复值”默认保留哪一条记录?
答案
- 只选一列时 Excel 可能只排该列,其他列不跟着移动;应点数据区域内任意单元格再排序。
- 同一行是“且”,不同行是“或”。
- 默认保留第一次出现的记录,删除后续重复项;要保留最新一条,先按时间降序排序再去重。