Các câu hỏi về lọc dữ liệu, lọc với nhiều điều kiện

tranquoctuantds

Thành viên mới
Tham gia ngày
5 Tháng mười một 2011
Bài viết
4
Được thích
0
Điểm
363
Tuổi
32
1600253609040.png
Anh chị cho em hỏi sao lọc được ra cái bảng nhỏ ạ, vì mấy hàm trên em tim trong excel không có ạ, cảm ơn anh chị ạ.
 

File đính kèm

tranquoctuantds

Thành viên mới
Tham gia ngày
5 Tháng mười một 2011
Bài viết
4
Được thích
0
Điểm
363
Tuổi
32

tigertiger

Coming back ...
Tham gia ngày
25 Tháng một 2007
Bài viết
1,547
Được thích
1,469
Điểm
860

hoangtuaotrang_hp_vn

Thành viên thường trực
Tham gia ngày
17 Tháng năm 2009
Bài viết
361
Được thích
169
Điểm
695
Tuổi
34

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia ngày
8 Tháng sáu 2006
Bài viết
11,742
Được thích
17,578
Điểm
1,860
Mấy hàm này chỉ có trong phiên bản Office 365 nhé bạn
Viết hàm mảng tự tạo cũng được;:
PHP:
Function LKe(Rng As Range, TuNgay As Date, DenNgay As Date, Ten As String)
 ReDim Arr(1 To Rng.Rows.Count, 1 To 3) As String
 Dim W As Integer, J As Long
 
 For J = 1 To Rng.Rows.Count
    If Rng.Cells(J, "A").Value = Ten And (Rng.Cells(J, "B").Value >= TuNgay And Rng.Cells(J, "B").Value <= DenNgay) Then
        W = W + 1
        Arr(W, 2) = Rng.Cells(J, "C").Value
        Arr(W, 1) = Rng.Cells(J, "B").Value
        Arr(W, 3) = Rng.Cells(J, "D").Value
    End If
 Next J
 LKe = Arr()
End Function
 

File đính kèm

hoangtuaotrang_hp_vn

Thành viên thường trực
Tham gia ngày
17 Tháng năm 2009
Bài viết
361
Được thích
169
Điểm
695
Tuổi
34
Viết hàm mảng tự tạo cũng được;:
PHP:
Function LKe(Rng As Range, TuNgay As Date, DenNgay As Date, Ten As String)
ReDim Arr(1 To Rng.Rows.Count, 1 To 3) As String
Dim W As Integer, J As Long

For J = 1 To Rng.Rows.Count
    If Rng.Cells(J, "A").Value = Ten And (Rng.Cells(J, "B").Value >= TuNgay And Rng.Cells(J, "B").Value <= DenNgay) Then
        W = W + 1
        Arr(W, 2) = Rng.Cells(J, "C").Value
        Arr(W, 1) = Rng.Cells(J, "B").Value
        Arr(W, 3) = Rng.Cells(J, "D").Value
    End If
Next J
LKe = Arr()
End Function
Chú ơi, phần ngày tháng mà sắp xếp theo thứ tự nữa thì tuyệt vời chú à :D

1600272653160.png
 

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia ngày
8 Tháng sáu 2006
Bài viết
11,742
Được thích
17,578
Điểm
1,860
Chú ơi, phần ngày tháng mà sắp xếp theo thứ tự nữa thì tuyệt vời chú à
Muốn đạt iêu cầu bổ sung này, thì ta cần thay đổi công đoạn:
Thay vì duyệt theo dòng trên cột 'A', ta duyệt theo ngày từ thấp đến cao (Có nghĩa coi như thêm 1 vòng lặp)
Trong quá trình duyệt theo cột 'B' này, Nếu thỏa điều kiện ngày, ta xét đến cột 'A' cùng hàng; Nếu thỏa cả 2 sẽ đưa vô mảng kết quả.

Ta có thể thử bổ sung thêm công đoạn làm danh sách các ngày ở 2 ô tương ứng với ngày bắt đầu & ngày kết thúc để chọn (Validation) (?)

Chúc các bạn vui & thành công!
 

tranquoctuantds

Thành viên mới
Tham gia ngày
5 Tháng mười một 2011
Bài viết
4
Được thích
0
Điểm
363
Tuổi
32
Viết hàm mảng tự tạo cũng được;:
PHP:
Function LKe(Rng As Range, TuNgay As Date, DenNgay As Date, Ten As String)
ReDim Arr(1 To Rng.Rows.Count, 1 To 3) As String
Dim W As Integer, J As Long

For J = 1 To Rng.Rows.Count
    If Rng.Cells(J, "A").Value = Ten And (Rng.Cells(J, "B").Value >= TuNgay And Rng.Cells(J, "B").Value <= DenNgay) Then
        W = W + 1
        Arr(W, 2) = Rng.Cells(J, "C").Value
        Arr(W, 1) = Rng.Cells(J, "B").Value
        Arr(W, 3) = Rng.Cells(J, "D").Value
    End If
Next J
LKe = Arr()
End Function
Cảm ơn bạn, đúng như mình đang muốn làm.
 
Top Bottom