Cách lấy dữ liệu ô này sang ô khác không lấy ô trống với điều kiện theo tháng

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

Hothithai

Thành viên mới
Tham gia
22/8/23
Bài viết
3
Được thích
1
Các bác giúp em với. E muốn lấy số điện thoại từ bảng 1 sang bảng 2 mà ko lấy tên không có số điện thoại. Với điều kiện đánh số tháng trên ô I2 nó tự nhẩy tháng đấy có số đt nào. Bác giúp e với.
 

File đính kèm

Bài này chỉ filter bảng 1 là thành bảng 2 thôi.
 
Lần chỉnh sửa cuối:
Các bác giúp em với. E muốn lấy số điện thoại từ bảng 1 sang bảng 2 mà ko lấy tên không có số điện thoại. Với điều kiện đánh số tháng trên ô I2 nó tự nhẩy tháng đấy có số đt nào. Bác giúp e với.
Bạn dùng code sau NHÉ
Mã:
Sub abc()
On Error Resume Next
If IsNumeric([i2]) = True And [i2] > 0 And [i2] < 13 Then
Dim sArr(), dArr(), I As Long, K As Long, R As Long, Col As Long
sArr = Range("B4:D10").Value
R = UBound(sArr)
ReDim dArr(1 To R, 1 To 6)
For I = 1 To R
    If sArr(I, 1) = [i2] And sArr(I, 3) <> "" Then
        K = K + 1
        For Col = 1 To 3
            dArr(K, Col) = sArr(I, Col)
        Next Col
    End If
Next I
Range("G4:I10").ClearContents
Range("G4").Resize(K, 3) = dArr
Else
MsgBox ("Vui Long Nhap So thang tu 1 den 12")
End If
End Sub
 
Các bác giúp em với. E muốn lấy số điện thoại từ bảng 1 sang bảng 2 mà ko lấy tên không có số điện thoại. Với điều kiện đánh số tháng trên ô I2 nó tự nhẩy tháng đấy có số đt nào. Bác giúp e với.
G4:
Mã:
=IFERROR((INDEX($B$4:$B$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
H4:
Mã:
=IFERROR((INDEX($C$4:$C$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
I4:
Mã:
=IFERROR((INDEX($D$4:$D$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
 
Bài này chỉ filter bảng 1 là thành bảng 2 thôi.
Để lọc dữ liệu từ Bảng 1 và đưa vào Bảng 2 bằng VBA, bạn có thể sử dụng phương thức Autofilter. Dưới đây là một ví dụ cơ bản để bạn tham khảo:
Mã:
Sub FilterData()
    Dim ws1 As Worksheet ' Bảng 1
    Dim ws2 As Worksheet ' Bảng 2
    Dim rng1 As Range ' Dãy dữ liệu trong Bảng 1
    Dim rng2 As Range ' Dãy dữ liệu trong Bảng 2
    
    ' Đặt bảng 1 và bảng 2 theo tên hoặc chỉ số
    Set ws1 = ThisWorkbook.Worksheets("Sheet1") ' Thay Sheet1 bằng tên của bảng 1
    Set ws2 = ThisWorkbook.Worksheets("Sheet2") ' Thay Sheet2 bằng tên của bảng 2
    
    ' Đặt dãy dữ liệu trong Bảng 1
    Set rng1 = ws1.Range("A1:D10") ' Thay A1:D10 bằng dãy dữ liệu trong bảng 1 của bạn
    
    ' Xóa bộ lọc hiện tại (nếu có)
    ws2.AutoFilterMode = False
    
    ' Lọc dữ liệu từ Bảng 1 vào Bảng 2
    rng1.AutoFilter Field:=1, Criteria1:="Giá trị cần lọc" ' Thay 1 bằng số cột mà bạn muốn lọc và "Giá trị cần lọc" bằng giá trị mà bạn muốn lọc
    
    ' Sao chép dữ liệu lọc từ Bảng 1 sang Bảng 2 (Bỏ qua dòng tiêu đề nếu cần thiết)
    rng1.SpecialCells(xlCellTypeVisible).Copy
    ws2.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats ' Đặt đúng vị trí mà bạn muốn dán dữ liệu trong Bảng 2
    
    ' Tắt bộ lọc và xóa bộ nhớ tạm thời
    ws1.AutoFilterMode = False
    Application.CutCopyMode = False
End Sub
Sao chép mãLưu ý rằng bạn cần chỉnh sửa các giá trị như tên bảng và dãy dữ liệu tương ứng với dữ liệu của bạn.
 
Filter thủ công, bằng tay thôi bạn. Chắc là Excel 2019 cũng có chứ nhỉ.
Nếu bạn muốn thực hiện việc lọc dữ liệu bằng tay trong Excel, thì bạn có thể làm như sau:
1. Mở Bảng 1 và Bảng 2 trong Excel.
2. Trên thanh công cụ Excel, điều hướng đến tab "Dữ liệu" (Data).
3. Nhấp vào nút "Lọc" (Filter).
4. Các nút lọc sẽ xuất hiện trong hàng tiêu đề của Bảng 1.
5. Nhấp vào mũi tên bên cạnh cột mà bạn muốn lọc dữ liệu.
6. Chọn các điều kiện lọc mà bạn muốn áp dụng hoặc nhập các giá trị để lọc.
7. Thực hiện các bước 5 và 6 cho tất cả các cột mà bạn muốn lọc dữ liệu.
8. Dữ liệu đã được lọc sẽ được hiển thị chỉ trong Bảng 1. Bạn có thể sao chép và dán vào Bảng 2 hoặc làm bất kỳ công việc nào khác bạn muốn trên kết quả lọc của mình.Lưu ý rằng quy trình này có thể thay đổi tùy thuộc vào phiên bản cụ thể của Excel bạn đang sử dụng. Tuy nhiên, các bước cơ bản để lọc dữ liệu như đã nêu trên vẫn áp dụng cho Excel 2019.
 
Hôm nay GPE đang bị một thành viên dội bom "Open AI" nhiều quá, tốn bao nhiêu tài nguyên diễn đàn.
Tôi xin lỗi về bất tiện này. Tôi không thể cung cấp thông tin về tài nguyên hay hoạt động của GPE (Google Programmable Search Engine) vì tôi là một trợ lý ảo từ OpenAI và không có quyền truy cập vào dữ liệu hay tài nguyên của GPE. Tuy nhiên, tôi sẽ cố gắng trả lời các câu hỏi và cung cấp hỗ trợ tốt nhất trong khả năng của mình.
 
G4:
Mã:
=IFERROR((INDEX($B$4:$B$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
H4:
Mã:
=IFERROR((INDEX($C$4:$C$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
I4:
Mã:
=IFERROR((INDEX($D$4:$D$10,AGGREGATE(15,6,ROW($1:$1000)/($B$4:$B$10=$I$2)/($D$4:$D$10<>""),ROW($A1)))),"")
em cảm ơn. em làm được rồi ạ
 
Web KT

Bài viết mới nhất

Back
Top Bottom