如何在Microsoft Excel中删除空列
当个人在Microsoft Excel中处理大量数据时,删除任何空列或行都是一项繁琐的任务。
在本教程中,我们将讨论并学习如何在Microsoft Excel中删除空列的简单步骤,同时利用内置的名为“Go to Special”选项的Excel工具。
这是一种快速且最简单的方法,可用于有效地删除空列。虽然这使得它成为实施的简单替代方案,个人必须知道它可能导致其特定文档错位。因此,在个人开始删除空格单元格之前,始终保存文档的备份副本以确保安全模式。
在Microsoft Excel中手动删除空列
如果个人有一个较小的数据集,比如下面所示的数据集,可以根据个人的要求手动选择空列然后删除它们。
让我们现在看一下以下步骤,可以用来高效地手动删除上述数据集中的空白列:
步骤1: 首先,我们将通过点击该列的标题来选择要删除的空白列。
步骤2: 一旦选择了空白列,我们将右键单击Excel表格中的选择选项。
步骤3: 然后,我们将点击 ‘删除’ 选项来执行任务。
通过执行上述步骤,将立即删除整个选定的空白列,并将剩余的数据集向左移动。
注意:请注意,我们还可以通过同时按住键盘上的Control键(或者Mac操作系统上的Command键)并手动单击所有空白列的列标头来一次选择多个空白列。一旦选择了所有的空白列,我们可以右键单击,然后点击“删除”选项以有效删除所有空白列。
如果我们谈论这种方法的最大缺点,那就是这种方法是手动且效率低下的;因此,它最适用于小数据集而不是大数据集。
如果我们考虑到包含大量空白列的大数据集,则我们必须使用下面讨论的其他方法。
使用Microsoft Excel中的COUNT函数+排序或查找和替换删除空白列
Microsoft Excel具有内置功能,通过Go To对话框我们可以立即选定可用的空白单元格。然而,目前还没有有效的方法可以快速选择只有空白的列。
因此,现在我们必须使用一种变通方法来识别那些只有空白单元格的列,然后有效地删除这些空白列。
下面我们提到了一组数据,其中包含各种商店销售不同物品的销售数据。正如我们所看到的,以下一组数据中有一些列是空白的:
所以,在Excel中现在有几种方法可以用来从上述数据集中删除所有空列。
通过在Microsoft Excel中使用COUNTA公式与查找和替换
对于大量数据,可以使用更好更高效的方法来删除所有空列,方法是在顶部插入一个助手行,然后使用 COUNTA 公式来正确识别所有空列。
之后,我们可以利用附加的助手行快速选择所有可用的空列并删除它们。
下面我们已经提到了数据集,其中我们有一些空列我们想要删除。
以下是在使用 COUNTA函数 时可以执行的步骤,以及使用辅助行:
步骤1: 首先,我们将通过点击行头(即左侧给出的灰色行号)来选择数据集的第一行。
步骤2: 在这一步中,通过右键点击选择整个第一行,然后点击插入选项。这将在数据集的第一行上方插入一行新数据:
步骤3: 然后我们会在助手行的第一个相关使用单元格中输入以下公式,然后将其分别复制到所有单元格中:
=IF(COUNTA(A2:A1048576)=0, "Blank", "Not Blank")
上述公式主要使用了 COUNTA 函数,然后计算给定范围内非空单元格的总数。
除此之外,使用的公式将为所有非空的选择列返回大于零的值,对于任何空的列,返回零:
之后,我们将使用 IF FUNCTION 来实现以下目的:如果所述列是空的,则在单元格中获取“Blank”,如果不为空,则获取“Not Blank”。
现在,在查看辅助行中的值时,我们可以轻松识别出给定的空列。一旦我们选择了所有这些单元格,就可以一次性删除整列。
选择所有空列的步骤如下:
步骤1: 首先,我们需要选择辅助行中的所有单元格。
步骤2: 然后,我们将按住键盘上的Control键,并按下F键。这将打开查找和替换对话框,我们还可以通过转到“主页”选项卡,然后点击“查找与选择”选项,再点击“查找”选项来打开查找和替换对话框。
步骤 3: 现在,在“查找和替换”对话框中,我们将分别在“查找内容”字段中输入文本“空白”。
步骤4: 之后,我们将点击 ‘选项’ 按钮
步骤 5: 现在,在“查找范围”下拉菜单中,我们会选择“值”。
步骤 6: 之后,我们会勾选“匹配整个单元格内容”的选项。
步骤7: 在这个步骤中,我们将点击“查找所有”按钮,以便找到并返回所有只包含文本“ 空白 ”的单元格的引用。
步骤 8: 现在,我们将按住 Control 键并按下 A 键,以选择由查找和替换选项给出的所有单元格。
步骤9: 现在,我们将右键单击已选中的任何一个单元格,然后点击“删除”选项。
步骤10: 我们将在删除对话框中选择所有的“整个列”选项。
步骤11: 完成上述步骤后,我们将分别点击“确定”按钮。
上述选项将立即删除我们选择的数据集中的所有空白列。
重要提示:
- 需要注意的是,COUNTA函数只有在该列中的所有单元格都为空白时才会返回0。如果给定列中有一个带有没有值的标题需要删除的话,则需要调整相应的公式,以便不使用标题行。
- 例如, 我们可以使用以下公式: =IF (COUNTA (A3:A1048576)=0, “空白”, “非空白”) 在连续的空白列中同样可以应用。
- 此外,这个公式只有在特定列为空白时才会生效。
- 例如, 如果空白列中的单元格中存在空格字符,尽管它们看起来是空的,但COUNTA函数不会将其视为空白。
在Microsoft Excel中利用COUNTA函数和排序选项的方法
现在我们将讨论另一种最佳方法,即在Microsoft Excel中有效且快速地删除所有空白列。
在这种方法中,我们仍然使用COUNTA函数,在辅助行中获取“空白”或“非空白”,并根据列是否为空来判断。
但是,我们不再使用“查找和替换”对话框,而是使用排序选项。以下是相同的数据集,我们要删除空白列。
以下是用于插入辅助行以标识空列的步骤:
步骤1: 在此步骤中,我们将通过单击行标头来选择数据集的第一行。
步骤2: 之后,我们将右键单击”插入”选项,这将在数据集的第一行上方插入一行新行。
步骤3: 然后,我们将在辅助行的第一个相应单元格中输入以下公式,并将其复制到辅助行中的所有单元格。
=IF (COUNTA (A2:A1048576)=0, "Blank", "Not Blank")
上面的公式主要返回下面一列为空时的文本“空白”,下面一列不为空时返回“不为空”。
现在,在此之后,我们可以通过利用辅助行来对整个数据集进行排序,以便将所有空列放在一起,所有非空列放在一起。
下面是执行此操作的步骤:
步骤1: 首先,我们将选择整个数据集,包括辅助行。
步骤2: 然后,我们将点击 数据 选项卡,该选项卡位于Excel表格中。
步骤3: 现在,在排序与筛选组中,我们将点击 排序 图标,这将打开排序对话框。
步骤4: 然后,我们将有效地点击 选项 按钮。
步骤5: 现在,在打开的“排序选项”对话框中,我们将点击“从左到右排序”选项;选择后,必须点击确定按钮。
步骤6: 在这一步中,我们将点击“排序方式”下拉菜单,然后依次选择“行1”的选项。
步骤7: 之后,我们需要保持顺序为A到Z。然后最后点击OK。
而上述步骤将根据辅助行对所选数据进行排序,并将所有空白列放在一起,非空白列放在一起:
一旦我们把所有的空列都聚集在一起,我们可以一次性选择它们,然后相应地删除。
一旦我们删除了空列,我们可以很容易地将助手行从表中删除。
使用VBA(Visual Basic for Application)删除空列
虽然我们在上一节中介绍的方法都很好用,但是它们需要使用助手行来进行一些设置。
假设我们更熟悉VBA(Visual Basic for Application),在这种情况下,我们可能会发现使用比上面介绍的两种助手行方法更为便捷。
代码:
Sub DeleteBlankColumns ()
Dim EntireColumn As Range
On Error Resume Next
Application.screen updating = True
For i = Selection.Columns.Count To 1 Step -1
Set EntireColumn = Selection.Cells (1, i).EntireColumn
If Application.WorksheetFunction.count (EntireColumn) = 0 Then
EntireColumn.Delete
End If
Next
Application. screen updating = True
End Sub
以上的VBA代码通常使用简洁而简单的 For-Next循环 来遍历选择的每一列;然后,它将检查该列中所有单元格的COUNTA值是否为零。
此外,如果特定情况下 COUNTA函数 的值为0,那意味着该列为空,VBA宏代码将删除该列。或者,如果 COUNTA函数 的值似乎大于0,则该列不为空,将不会被删除。
如何在Microsoft Excel中使用上述VBA宏代码?
现在,我们将按照以下步骤使用上述VBA代码来删除Excel中的空列:
步骤1: 首先,我们将选择要删除空列的特定数据集。
步骤2: 然后,我们将在功能区中点击“开发人员”选项卡。
步骤3: 现在,我们将点击“Visual Basic”图标。这将在Microsoft Excel中打开VB编辑器。
步骤4: 之后,我们将点击菜单下的 插入 选项,然后点击 模块 。完成这一步后,在项目资源管理器窗格中将会清晰地看到插入了一个新模块:
步骤 5: 现在我们需要将上面的 VBA 宏代码复制并粘贴到可用的模块代码窗口中。
第6步: 然后,为了运行宏,我们将有效地把光标放在代码的任何位置,并单击工具栏上的绿色播放图标。
如前所述,步骤会立即运行代码,并高效地从所选数据集中删除所有空列。
使用Excel中的Go-To Special删除空白列
我们要展示的最后一种方法是只使用“转到特殊”对话框来删除空的Excel列。
由于这种方法被认为是我们在本教程中讨论的所有方法中最快的方法,所以在处理大型数据集时需要更加谨慎,因为它可能出现错误,并且可以有效地导致删除部分空白列。
让我们看看这种方法在Microsoft Excel中最终如何工作。
下面有一组空列,我们想要删除这些列。
要跟随的步骤:
步骤1: 选择整个数据集。
步骤2: 然后,我们将按下键盘上的F5键,打开“转到”对话框。
步骤3: 现在,在弹出的“转到”对话框中,我们也会点击 特殊 按钮。
步骤 4: 继续在屏幕上打开的“转到特殊”对话框中,我们将点击 空白 选项。
步骤5: 然后我们将点击“确定”按钮。
步骤6: 一旦我们选中了这些空白单元格,我们将右键单击空白列中的任何一个空白单元格,然后点击 删除 选项。
步骤 7: 这将打开删除对话框,在此处我们可以选择 整个列 选项,然后点击“确定”按钮。