如何在 Excel 中仅复制和粘贴非空白单元格?

ms excelmicrosoft technologiescomputers更新于 2025/3/6 11:56:17

通常,在 Excel 中,列表可能包含也可能不包含空单元格。当我们想要复制仅包含值的单元格时,可以使用本教程中提到的方法。如果我们尝试以默认方式复制和粘贴,则默认也会复制空单元格。如果我们尝试手动执行此操作,则可能非常耗时。阅读本教程,了解如何在 Excel 中仅复制和粘贴非空白单元格。

使用 VBA 仅复制和粘贴非空白单元格

首先,我们将打开 VBA 应用程序,然后插入一个模块,将代码复制到其中,最后运行代码以完成我们的任务。让我们看一个简单的过程,了解如何使用 VBA 应用程序复制和粘贴非空白单元格。

步骤 1

假设有一个 Excel 工作表,其中包含与下图类似的数据。现在右键单击工作表名称,选择"查看代码"以打开 VBA 应用程序,然后在 VBA 应用程序中点击"插入",然后点击"模块"。

右键单击 >"查看代码">"插入">"模块"

步骤 2

在文本框中输入以下程序代码,如下图所示。

程序

Sub PasteNotBlanks()
'Updated By Nirmal
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "Copy Non blank"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
If InputRng.Columns.Count > 1 Then
    MsgBox "Please select one column."
    Exit Sub
End If
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
InputRng.SpecialCells(xlCellTypeConstants).Copy Destination:=OutRng.Range("A1")
End Sub

步骤 3

然后将工作表另存为启用宏的工作簿,点击 F5,选择要复制的单元格区域,然后点击"确定"。

保存 > F5 > 区域 > 确定

步骤 4

然后选择要创建输出的单元格,然后点击"确定"。

输出单元格 > 确定

结论

在本教程中,我们使用了一个简单的示例来演示如何在 Excel 中仅复制和粘贴非空白单元格。


相关文章


有用资源