如何在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中僅複製貼上非空單元格。

更新於:2023年3月7日

1K+ 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.