Thông thường, chúng ta có thể áp dụng nhanh tính năng Advanced Filter để trích xuất dữ liệu từ dữ liệu thô trong cùng một bảng tính. Tuy nhiên, đôi khi, khi bạn cố gắng sao chép kết quả đã lọc sang một trang tính khác, bạn sẽ nhận được thông báo cảnh báo sau. Trong trường hợp này, bạn có thể xử lý tác vụ này trong Excel như thế nào? Show
Sao chép dữ liệu sang một trang tính khác với Bộ lọc nâng cao bằng cách sử dụng tính năng Bộ lọc nâng caoĐây là một cách giải quyết đơn giản để bạn giải quyết công việc này, vui lòng làm như thế này 1. Kích hoạt trang tính mà bạn muốn sao chép kết quả đã lọc bằng cách sử dụng chức năng Bộ lọc nâng cao 2. Sau đó nhấp vào Dữ liệu > Nâng cao, xem ảnh chụp màn hình 3. Trong hộp thoại Bộ lọc nâng cao, chọn Sao chép sang vị trí khác từ phần Hành động, sau đó nhấp vào nút để chọn phạm vi dữ liệu mà bạn muốn lọc trong một trang tính khác bên cạnh phạm vi Danh sách, tiếp tục . button beside the Criteria range to select the criteria from another sheet, see screenshot:4. Sau đó nhấp vào nút bên cạnh hộp Sao chép vào để chọn một ô mà bạn muốn xuất kết quả đã lọc từ trang tính đang hoạt động, rồi nhấp vào nút OK, kết quả được lọc đã được trích xuất sang một trang tính khác dựa trên .Sao chép dữ liệu sang trang tính khác bằng Bộ lọc nâng cao bằng cách sử dụng mã VBANếu bạn thành thạo mã VBA, bạn có thể hoàn thành công việc này với mã VBA sau 1. Kích hoạt trang tính mà bạn muốn lọc và sao chép kết quả sang trang tính khác 2. Giữ phím ALT + F11 trong Excel và nó sẽ mở cửa sổ Microsoft Visual Basic for Applications 3. Nhấp vào Chèn > Mô-đun và dán đoạn mã sau vào Cửa sổ Mô-đun mã VBA. Sao chép dữ liệu sang trang tính khác bằng Bộ lọc nâng cao
4. Và sau đó nhấn phím F5 để chạy mã này và một hộp nhắc xuất hiện để cho phép bạn chọn phạm vi dữ liệu mà bạn muốn lọc, xem ảnh chụp màn hình 5. Sau đó nhấp vào OK và một hộp thoại khác sẽ xuất hiện để nhắc bạn chọn phạm vi tiêu chí mà bạn muốn lọc dựa trên đó, xem ảnh chụp màn hình 6. Tiếp tục nhấp vào OK, trong hộp thoại bật ra, vui lòng chọn một ô từ một trang tính mới khác mà bạn muốn xuất kết quả bộ lọc, xem ảnh chụp màn hình 7. Cuối cùng, bấm nút OK, dữ liệu được lọc đã được xuất sang một trang tính cụ thể khác theo nhu cầu của bạn Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách sao chép dữ liệu từ tập dữ liệu đã lọc và cách dán vào cột đã lọc trong khi bỏ qua các ô ẩn Mục lục Sao chép từ một cột đã lọc Bỏ qua các ô ẩnGiả sử bạn có tập dữ liệu dưới đây Đưa ra bảng trên, giả sử bạn chỉ muốn sao chép tất cả các hàng của nhân viên từ bộ phận CNTT Đối với điều này, bạn có thể áp dụng bộ lọc cho bảng của mình như sau
Bây giờ, việc sao chép từ một bảng đã lọc khá đơn giản. Khi bạn sao chép từ một cột hoặc bảng đã lọc, Excel sẽ tự động sao chép chỉ những hàng hiển thị Vì vậy, tất cả những gì bạn cần làm là
Điều này sẽ chỉ khiến các hàng hiển thị từ bảng đã lọc được dán Đôi khi, bạn có thể gặp sự cố khi sao chép các hàng hiển thị, đặc biệt là khi làm việc với Tổng phụ hoặc các tính năng tương tự Trong những trường hợp như vậy, chỉ sao chép các hàng hiển thị cũng khá dễ dàng. Đây là những gì bạn cần làm
Vì vậy, bạn thấy việc sao chép từ các cột đã lọc khá đơn giản Nhưng bạn không thể nói như vậy khi dán vào cột đã lọc Dán một giá trị ô đơn vào tất cả các hàng hiển thị của cột được lọcKhi dán vào cột đã lọc có thể xảy ra 2 trường hợp
Đối với trường hợp đầu tiên, việc dán vào cột đã lọc khá dễ dàng Giả sử chúng ta muốn thay thế tất cả các ô có Department = “IT” bằng dạng đầy đủ. "Công nghệ thông tin" Đối với điều này, bạn có thể nhập từ “Công nghệ thông tin” vào bất kỳ ô trống nào, sao chép và dán từ đó vào các ô hiển thị của Cột “Bộ phận” đã lọc. Dưới đây là hướng dẫn từng bước về cách thực hiện việc này
Bạn sẽ tìm thấy giá trị “Công nghệ thông tin” được dán vào chỉ các ô hiển thị của cột “Bộ phận” Để xác minh điều này, hãy xóa bộ lọc bằng cách chọn Dữ liệu-> Bộ lọc. Lưu ý rằng tất cả các ô khác của cột “Bộ phận” không thay đổi Hai cách để dán một tập hợp các giá trị vào các hàng hiển thị của một cột được lọcBây giờ, hãy xem điều gì sẽ xảy ra khi bạn muốn dán một tập hợp các giá trị vào các ô hiển thị của một cột đã lọc. Giả sử bạn muốn dán danh sách tiền lương chỉ cho các hàng chứa Bộ phận =”Công nghệ thông tin” Nếu bạn thử sao chép các ô này và dán chúng vào cột Lương đã lọc, bạn có thể sẽ nhận được thông báo lỗi như “Không thể sử dụng lệnh trên nhiều lựa chọn” Điều này là do bạn không thể dán vào các ô trong phạm vi có chứa các hàng hoặc cột bị ẩn. Đó là một trong những hạn chế của Excel. Không có cách nào khác, nhưng có một số thủ thuật mà bạn có thể sử dụng để thực hiện việc này Dưới đây là hai thủ thuật mà bạn có thể sử dụng để dán một tập hợp các giá trị vào một cột đã lọc, bỏ qua các ô ẩn Dán Tập hợp Giá trị vào Hàng Hiển thị của Cột được Lọc – Sử dụng Công thứcTrong phương pháp này, chúng tôi sử dụng một công thức để chỉ cần sao chép giá trị của ô sang ô đích Đối với ví dụ trên (nơi bạn muốn sao chép một tập hợp các giá trị lương vào chỉ các hàng có Bộ phận= “Công nghệ thông tin”), đây là các bước bạn cần thực hiện
Dán Tập hợp Giá trị vào Hàng Hiển thị của Cột được Lọc – Sử dụng VBScriptĐây là một phương pháp khá dễ dàng hơn và nhanh hơn. Tất cả những gì bạn cần làm là sao chép VBScript được cung cấp bên dưới vào cửa sổ nhà phát triển của bạn và chạy nó Sub paste_to_filtered_col() Dim s As Range Dim visible_source_cells As Range Dim destination_cells As Range Dim source_cell As Range Dim dest_cell As Range Set s = Application.Selection s.SpecialCells(xlCellTypeVisible).Select Set visible_source_cells = Application.Selection Set destination_cells = Application.InputBox("Please select the destination cells:", Type:=8) For Each source_cell In visible_source_cells source_cell.Copy For Each dest_cell In destination_cells If dest_cell.EntireRow.RowHeight <> 0 Then dest_cell.PasteSpecial Set destination_cells = dest_cell.Offset(1).Resize(destination_cells.Rows.Count) Exit For End If Next dest_cell Next source_cell End Sub Thực hiện theo các bước sau để sử dụng mã trên
Macro của bạn hiện đã sẵn sàng để chạy. Để chạy mã
Các ô đã chọn của bạn bây giờ sẽ được sao chép và dán vào các ô đích. Bạn có thể tiếp tục và xóa các ô ban đầu nếu muốn Bạn cũng có thể tạo lối tắt nhỏ (sử dụng Thanh công cụ truy cập nhanh) để chạy macro của mình bất cứ khi nào bạn cần. Đây là cách
Giờ đây, bạn sẽ nhận được nút macro Truy cập nhanh để nhanh chóng chạy macro của mình chỉ bằng một cú nhấp chuột Bất cứ khi nào bạn cần sao chép và dán một tập hợp các ô vào một cột đã lọc, chỉ cần chọn các ô nguồn của bạn, nhấp vào nút đã tạo này rồi chọn các ô đích |