Bỏ qua nội dung chính

Làm thế nào để sao chép các hàng và dán vào một trang tính khác dựa trên ngày tháng trong Excel? 

Giả sử, tôi có một loạt dữ liệu, bây giờ, tôi muốn sao chép toàn bộ các hàng dựa trên một ngày cụ thể và sau đó dán chúng vào một trang tính khác. Bạn có ý tưởng hay nào để giải quyết công việc này trong Excel không?

Sao chép các hàng và dán vào một trang tính khác dựa trên ngày hôm nay

Sao chép hàng và dán vào trang tính khác nếu ngày lớn hơn hôm nay


Sao chép các hàng và dán vào một trang tính khác dựa trên ngày hôm nay

Nếu bạn cần sao chép các hàng nếu ngày là hôm nay, vui lòng áp dụng mã VBA sau:

1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

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

Mã VBA: Sao chép và dán các hàng dựa trên ngày hôm nay:

Sub CopyRow()
'Updateby Extendoffice
    Dim xRgS As Range, xRgD As Range, xCell As Range
    Dim I As Long, xCol As Long, J As Long
    Dim xVal As Variant
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    xCol = xRgS.Rows.Count
    Set xRgS = xRgS(1)
    Application.CutCopyMode = False
    J = 0
    For I = 1 To xCol
        Set xCell = xRgS.Offset(I - 1, 0)
        xVal = xCell.Value
        If TypeName(xVal) = "Date" And (xVal <> "") And (xVal = Date) Then
            xCell.EntireRow.Copy xRgD.Offset(J, 0)
            J = J + 1
        End If
    Next
    Application.CutCopyMode = True
End Sub

3. Sau khi dán mã trên, vui lòng nhấn F5 để chạy mã này và một hộp nhắc sẽ bật ra để nhắc bạn chọn cột ngày mà bạn muốn sao chép các hàng dựa trên, xem ảnh chụp màn hình:

4. Sau đó nhấn vào OK , trong một hộp nhắc nhở khác, hãy chọn một ô trong trang tính khác mà bạn muốn xuất kết quả, xem ảnh chụp màn hình:

5. Và sau đó nhấp vào OK , bây giờ, các hàng có ngày hôm nay được dán vào trang tính mới cùng một lúc, xem ảnh chụp màn hình:


Sao chép hàng và dán vào trang tính khác nếu ngày lớn hơn hôm nay

Để sao chép và dán các hàng có ngày lớn hơn hoặc bằng ngày hôm nay, ví dụ: nếu ngày bằng hoặc lớn hơn 5 ngày kể từ hôm nay, hãy sao chép và dán các hàng vào trang tính khác.

Mã VBA sau có thể giúp bạn:

1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

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

Mã VBA: Sao chép và dán các hàng nếu ngày lớn hơn hôm nay:

Sub CopyRow()
'Updateby Extentoffice
    Dim xRgS As Range, xRgD As Range, xCell As Range
    Dim I As Long, xCol As Long, J As Long
    Dim xVal As Variant
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    xCol = xRgS.Rows.Count
    Set xRgS = xRgS(1)
    Application.CutCopyMode = False
    J = 0
    For I = 1 To xCol
        Set xCell = xRgS.Offset(I - 1, 0)
        xVal = xCell.Value
        If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then
            xCell.EntireRow.Copy xRgD.Offset(J, 0)
            J = J + 1
        End If
    Next
    Application.CutCopyMode = True
End Sub

Chú thích: Trong mã trên, bạn có thể thay đổi tiêu chí, chẳng hạn như ít hơn hôm nay hoặc số ngày bạn cần trong Nếu TypeName (xVal) = "Date" And (xVal <> "") And (xVal> = Date And (xVal <Date + 5)) Thì mã script.

3. Sau đó nhấn F5 để chạy mã này, trong hộp nhắc nhở, vui lòng chọn cột dữ liệu bạn muốn sử dụng, xem ảnh chụp màn hình:

4. Sau đó nhấn vào OK , trong một hộp nhắc nhở khác, hãy chọn một ô trong trang tính khác mà bạn muốn xuất kết quả, xem ảnh chụp màn hình:

5. Nhấn vào OK bây giờ, các hàng có ngày bằng hoặc lớn hơn 5 ngày kể từ hôm nay đã được sao chép và dán vào trang tính mới như hình minh họa sau:

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

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...

tab kte 201905


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 (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Is it possible to do this for an entire workbook if the date is always in the same column on each? If so, what would the VBA code be, or which bit would I change?
This comment was minimized by the moderator on the site
Did you get a reply on this?
This comment was minimized by the moderator on the site
Same here. Would really like an answer!
THANKS ALOT ALREADY EXTENDOFFICe :D
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations