Bỏ qua nội dung chính

Làm cách nào để sao chép và chỉ dán các ô không trống trong Excel?

Hầu hết chúng ta đều có thể gặp phải vấn đề này, khi chúng ta sao chép danh sách dữ liệu có chứa một số ô trống và sau đó dán chúng vào một cột khác, các ô trống cũng sẽ được dán. Điều này rất khó chịu khi chúng ta không cần ô trống và chỉ muốn dán các ô không trống. Trong trường hợp này, làm thế nào chúng ta có thể sao chép và chỉ dán các ô không trống trong Excel một cách nhanh chóng và thuận tiện? Dưới đây là một số thủ thuật nhanh chóng để bạn giải quyết nó:

Chỉ sao chép và dán các ô không trống bằng lệnh Đi tới Đặc biệt

Chỉ sao chép và dán các ô không trống với tính năng Bộ lọc

Chỉ sao chép và dán các ô không trống với Công thức mảng

Chỉ sao chép và dán các ô không trống với mã VBA

Chỉ sao chép và dán các ô không trống với Kutools cho Excel ý kiến ​​hay3


mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán các ô không trống bằng lệnh Đi tới Đặc biệt

Với Đi đặc biệt , bạn có thể chọn tất cả dữ liệu trước, sau đó sao chép và dán chúng vào vị trí khác.

1. Chọn danh sách dữ liệu mà bạn muốn sử dụng.

doc-copy-only-nonblanks1

2. Sau đó nhấn vào Trang Chủ > Tìm & Chọn > Đi đặc biệt, xem ảnh chụp màn hình:

doc-copy-only-nonblanks1

3. Trong Đi đặc biệt hộp thoại, kiểm tra Hằng số tùy chọn, xem ảnh chụp màn hình:

doc-copy-only-nonblanks1

4. Sau đó nhấn vào OKvà chỉ các ô giá trị đã được chọn trong danh sách.

doc-copy-only-nonblanks1

5. Và sau đó sao chép và dán dữ liệu vào một vị trí mà bạn muốn. Và chỉ các giá trị ô không trống mới được dán. Xem ảnh chụp màn hình:

doc-copy-only-nonblanks1

Chú thích: Phương thức này chỉ khả dụng cho các hằng số, không áp dụng cho các ô công thức.


mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán các ô không trống với tính năng Bộ lọc

Sản phẩm Lọc tính năng này có thể giúp bạn lọc các ô không trống trước tiên, sau đó bạn có thể sao chép và dán chúng vào các ô khác khi cần.

2. Nhấp chuột Ngày > Lọc, xem ảnh chụp màn hình:

chỉ sao chép tài liệu nonblanks6

3. Sau đó nhấp vào nút thả xuống ở góc bên phải của ô trong danh sách đã chọn và bỏ chọn Chữ trống dưới menu thả xuống. Xem ảnh chụp màn hình:
doc-copy-only-nonblanks1

4. Và sau đó nhấp vào OK, tất cả các ô không trống đã được lọc ra như ảnh chụp màn hình sau:

doc-copy-only-nonblanks1

5. Cuối cùng, bạn có thể sao chép dữ liệu đã lọc và dán chúng vào bất kỳ vị trí nào bạn cần.

Chú thích: Cả giá trị và công thức đều có hiệu lực bằng cách sử dụng cách này.


Chọn các ô không trống cùng một lúc

Nhấp để dùng thử đầy đủ tính năng miễn phí trong 30 ngày!
doc kutools chọn các ô không trống

mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán các ô không trống với Công thức mảng

Để chỉ sao chép và dán các ô không trống, bạn cũng có thể áp dụng công thức mảng sau.

1. Bên cạnh dữ liệu của bạn, hãy nhập công thức sau vào ô trống:

=LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15<>"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))

doc-copy-only-nonblanks1

Chú thích: Trong công thức trên, A1: A15 là danh sách dữ liệu mà bạn muốn sử dụng. Bạn có thể thay đổi nó theo nhu cầu của mình.

2. Sau đó nhấn Shift + Ctrl + Nhập các phím với nhau, rồi chọn ô B1 và ​​kéo chốt điền vào phạm vi mà bạn muốn chứa công thức này và tất cả các giá trị ô không trống đã được trích xuất. Xem ảnh chụp màn hình:

doc-copy-only-nonblanks1

3. Vì chúng là công thức, khi bạn sao chép chúng sang nơi khác, bạn nên sao chép và dán chúng dưới dạng giá trị.

Chú thích: Công thức này chỉ có sẵn cho các hằng số, không áp dụng cho các ô công thức.


mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán các ô không trống với mã VBA

Nếu bạn quan tâm đến mã VBA, bạn có thể thực thi đoạn mã sau để hoàn thành tác vụ này.

1. Giữ ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic for Applications.

2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã VBA: Chỉ sao chép và dán các ô không trống trong Excel

Sub PasteNotBlanks()
'Update 20140325
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
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. Sau đó nhấn F5 để chạy mã này, một hộp nhắc sẽ xuất hiện để nhắc bạn chọn phạm vi dữ liệu mà bạn muốn sử dụng. Xem ảnh chụp màn hình:

doc-copy-only-nonblanks1

4. Và sau đó nhấp vào OK, một hộp nhắc khác sẽ hiện ra cho phép bạn chọn một ô để đặt dữ liệu.

doc-copy-only-nonblanks1

5. Nhấp chuột OK để hoàn thành mã này và chỉ các giá trị ô không trống mới được dán vào vị trí đã chỉ định của bạn.

Chú thích: Mã này chỉ có sẵn cho các hằng số.


mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán các ô không trống với Kutools cho Excel

Có cách nào dễ dàng hơn nhiều so với cách trên không? Tất nhiên, Kutools cho Excel's Chọn ô không trốngtiện ích s có thể giúp bạn chọn các ô không trống trước, sau đó sao chép và dán chúng.

Kutools cho Excel, với hơn 300 chức năng tiện dụng, giúp công việc của bạn dễ dàng hơn. 

Sau cài đặt miễn phí Kutools cho Excel, vui lòng làm như sau:

1. Chọn phạm vi ô và nhấp vào Kutools > Chọn > Chọn ô không trống. Xem ảnh chụp màn hình:
doc chọn nonblank ô 2

2. Sau đó, các ô không trống được chọn, nhấn Ctrl + C để sao chép chúng, sau đó đi đến chọn một ô mà bạn muốn xuất kết quả đã dán, nhấn Ctrl + V để dán các ô không trống đã chọn. Xem ảnh chụp màn hình:
doc chọn nonblank ô 3

mũi tên màu xanh bong bóng bên phải Chỉ sao chép và dán ô không trống

Kutools cho Excel: Hơn 300 chức năng bạn phải có trong Excel, Dùng thử miễn phí 30 ngày kể từ đây

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
=Filter(A:A,A:A<>"")
This comment was minimized by the moderator on the site
Array formula Works fine on text
but don't work on numbers.
This comment was minimized by the moderator on the site
Not working on Numbers !!!
Works fine on text !!!
Please guide
This comment was minimized by the moderator on the site
Thanks for the great tips! I am using the Find & Select feature, but it's taking a long time because my spreadsheet contains 70 columns and 450k rows. Is there a way to fasten the process?
This comment was minimized by the moderator on the site
When i select and copy only non-blank cells, how can i then paste it somewhere else with keeping the same empty ranges between them?
This comment was minimized by the moderator on the site
These tools delete the blank cells and compress the row. I want the format to be retained, including the spaces, but I do not want empty cells to overwrite cells containing existing data. i.e. I want to add the new, copied, cells in a column onto an existing column.
This comment was minimized by the moderator on the site
Hi #abc I have used your formula =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMAL L(IF('List of Overdue items'!A$1:A$15 00"",ROW('List of Overdue items'!A$1:A$15 00)),ROWS('List of Overdue items'!B$1:B2)) ))) I have data in one Worksheet and want to copy that data into another worksheet (same doc). Can you help?
This comment was minimized by the moderator on the site
Is there a way to make the macro work when referencing between different sheets?
This comment was minimized by the moderator on the site
This formula is absolutely amazing, thank you. Unfortunately it breaks when trying to copy from another sheet, is there a workaround?
This comment was minimized by the moderator on the site
correct the references when using the formula between different sheets. It does work. =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMALL(IF('List of Overdue items'!A$1:A$1500"",ROW('List of Overdue items'!A$1:A$1500)),ROWS('List of Overdue items'!B$1:B2)))))
This comment was minimized by the moderator on the site
thanks for the super formula: =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations