如何在Excel中只复制粘贴非空单元格?
通常,在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中仅复制粘贴非空单元格。
广告