跳至主要内容

如何在Excel中将空白单元格排在顶部?

Author: Xiaoyang Last Modified: 2025-07-31

如果你有一个包含一些空白单元格的数据列表,现在你需要将所有空单元格排在数据的顶部。当你在Excel中使用排序功能时,无论是“从小到大排序”还是“从大到小排序”都会将空白单元格放在记录的底部。在这种情况下,以下教程将讨论如何对行进行排序并将空白单元格放在Excel中的顶部。

通过按颜色排序将空白单元格排在顶部
使用Kutools for Excel轻松将空白单元格排在顶部

使用辅助列将空白单元格排在顶部
使用VBA代码将空白单元格排在顶部


通过按颜色排序将空白单元格排在顶部

在Excel中,你可以根据背景色对数据进行排序,因此这里可以给空白单元格填充特定的颜色,然后按颜色进行排序。请按照以下步骤操作:

1. 选择你的数据列表,并按Ctrl + G打开“定位”对话框,然后点击“特殊”按钮,见截图:

click Special button in the Go To dialog box

2. 在弹出的“定位条件”对话框中,勾选“空值”选项,然后点击“确定”。

check Blanks option in the dialog box

3. 所有空白单元格已被选中,现在你可以通过点击“ 开始”→“填充颜色”并选择你想要的颜色来填充它们,如下图所示:

fill the blank cells with a color

4. 然后你可以按填充颜色对列表进行排序,请选择你的值并点击“数据”→“排序”,在弹出的“ 排序”对话框中,选择要排序的列,并从“排序依据”下拉列表中选择“ 单元格颜色”,然后点击空白单元格的颜色,最后选择“置顶”选项。见截图:

sort data based on the color in the Sort dialog box

5. 完成设置后,点击“确定”,所有带颜色的空白单元格都被排在前面,然后你可以在排序后删除颜色。见截图:

all the colored blank cells have been sorted first arrow right remove the color after sorting

使用Kutools for Excel轻松将空白单元格排在顶部

Kutools for Excel高级排序工具可以帮助你轻松地对行进行排序并将空白单元格放在Excel的顶部。请按照以下步骤操作。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 选择你想排序并将空白单元格放在顶部的区域,然后点击“Kutools Plus”“排序” “高级排序”

click Advanced Sort feature of kutools

2. 在“高级排序”对话框中,选择你的排序条件,然后勾选“空白单元格在前”框,最后点击“确定”按钮。见截图:

check the Blank cells in front box in the dialog box

然后所选区域被排序,所有空白单元格立即被放在顶部,如下图所示。

all blank cells are put on top

  如果您想免费试用(30天)此工具,请点击下载,然后按照上述步骤进行操作。


使用辅助列将空白单元格排在顶部

为了将空白单元格排在数据列表的顶部,你可以使用公式来识别空白单元格,然后应用排序功能。

1. 在数据旁边的一个空白单元格中(例如B1),输入这个公式=A1="",见截图:

enter a formula to identify the blanks

2. 然后拖动填充柄到你希望包含此公式的单元格上,所有空白单元格显示为TRUE,其他显示为FALSE,见截图:

drag the formula down to other cells

3. 然后点击“数据”→“从大到小排序”,会弹出一个“ 排序警告”对话框,然后勾选“扩展选定区域”,见截图:

click Data > Sort Largest to Smallest
arrow down
check Expand the selection in the dialog box

4. 然后点击“确定”,所有空白单元格都已排在数值的顶部。

all the blank cells have been sorted on the top

5. 最后,你可以根据需要删除辅助列B中的值。


使用VBA代码将空白单元格排在顶部

应用以下VBA代码,你可以快速将空白单元格排在数据的顶部。

1. 按住ALT + F11键,打开Microsoft Visual Basic for Applications窗口

2. 点击“插入”→“模块”,并将以下代码粘贴到 模块窗口中。

VBA代码:将空白单元格排在数据的顶部

Sub SortBlankOnTop()
'Update 20140318
On Error Resume Next
Dim WorkRng As Range
Dim xMin As Double
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xMin = Application.WorksheetFunction.Small(WorkRng, 1) - 1
WorkRng.SpecialCells(xlCellTypeBlanks) = xMin
WorkRng.Sort , Key1:=Cells(WorkRng.Row, WorkRng.Column), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
WorkRng.Replace What:=xMin, Replacement:="", LookAt:=xlWhole
End Sub

3. 然后按F5键运行此代码,在弹出的对话框中,选择要排序的数据范围,见截图:

vba code to select the data list

4. 然后点击“确定”,空白单元格已排在顶部。


相关文章:

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!