你从系统里导出一份表格,中间夹着几十行空行,排序和透视全被打断。多数人第一反应是按 Ctrl+G 定位空值一次性删掉——How-To Geek 撰稿人 Tony Phillips 实测了六种删法,结论是这招他每次都躲着走。

定位空值为什么最危险
Ctrl+G 打开定位,点”定位条件”选”空值”,选中的是空单元格,不是空行。只要某行的备注列恰好没填,这行就会被一起选中,Ctrl+减号按下去,有效数据跟着一起没。数据规整时它确实快,可真实报表很少那么干净。
手动右键删除和 F4 重复上一步操作也一样:Shift+F8 能进”添加到所选内容”模式连续点行号,但几十行以上纯靠眼力找,漏一行是常事。
三种真正能用的方法
辅助列,一次性清理最稳。把区域转成表格,新增一列 BlankCheck,填入 =COUNTA(T_Sales[@[Order]:[Rep]]),有数据的行返回数字,整行为空返回 0。筛选出 0,选中后右键”删除 → 整个工作表行”,再清除筛选、删掉辅助列。它的价值在于删之前你能亲眼核一遍。
Power Query,可重复。选中表格内任意单元格,点 数据 → 来自表格/区域,在 Power Query 里选 主页 → 删除行 → 删除空行,最后”关闭并上载”。它只删完全空白的行,带个别空单元格的记录不受影响。缺点是会另生成一张表,但下次数据更新点一下刷新就能复用。
个人宏工作簿,一键搞定。Alt+F11 打开 VBA 编辑器,在 PERSONAL.XLSB 里新建模块,写一段从最后一行倒着往上判断 CountA 是否为 0 的循环,再固定到快速访问工具栏。倒序是关键,这样删掉的行不会打乱后面待检查的行号。
说白了,偶尔清一次用辅助列,天天要清就上宏。定位空值流传太广,可它赌的是你的数据足够整齐——这个赌注不值得下。你的表格是哪种脏法?
来源:How-To Geek







