Thắc mắc về cách lọc dữ liệu theo điều kiện (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

trungvitek

Thành viên mới
Tham gia
10/12/06
Bài viết
18
Được thích
0
Chào các Bác,

Mình có bảng dữ liệu (file đính kèm) export từ chương trình phần mềm quản lý của công ty. Mình muốn lọc dữ liệu ngày đáo hạn nhỏ nhất (ngay D.han) của những khách hàng mà mình quản lý thôi (lọc theo tên khách hàng) để đôn đốc người ta trả nợ đúng hạn, nhưng có một vấn đề là định dạng ngày cuả bảng dữ liệu được ghi dưới dạng như: 27 AUG 2007. Mình đã thử dùng hàm small nhưng không được.

Các Bác làm ơn giúp mình giải quyết vấn đề trên. Mình cám ơn nhiều!!!
 

File đính kèm

Để format lại ngày bạn vào format/cell để format lại ngày. Còn muốn lọc theo điều kiện thì bạn vào Data/filter ( chú ý chọn dòng đầu tiên) trong cột ngày đáo hạn bạn chọn nút trỏ xuống chọn ngày đáo hạn nhỏ nhất.Mình ở quán không có office nên không làm giúp file bạn được.
 
Dùng hàm Date(year,month,day) để chuyển về theo dd/mm/yyyy
Sau đó dùng hàm Dmin là OK
 
Dữ liệu của bạn khi Improm từ CSDL khác(Hình như đây là tư Fox qua) nên đã bị format thành dạng TEXT rối nên không thể chỉnh sửa như yeudoi đã nêu . Chỉ còn cách nhập lại bằng thủ công thôi . Cách của ThuNghi cũng là dựa theo yêu cầu đó . Bạn không thể làm thay thế hàng loạt được
 
Cám ơn Các Bạn đã quan tâm đến câu hỏi của mình, có thể các Bạn chưa hiểu rõ câu hỏi của mình.

Bảng dữ liệu export từ chương trình quản lý của công ty mình có rất nhiều khách hàng, mỗi khách hàng thì có thể phát sinh nhiều giao dịch vay, mỗi lần vay thì có ngày một đáo hạn cho riêng khoản vay đó. Mình chỉ quản lý khoảng 20 khách hàng, do đó để tiện việc quản lý mình chỉ cần lọc 20 khách hàng và chỉ cần biết ngày đáo hạn gần nhất của từng khách đó.

Khó khăn ở chỗ ngày đáo hạn trong dữ liệu export của chương trình quản lý công ty là kiểu text (27 AUG 2007) nên mình không biết cách lọc.

Mong các Bạn tham khảo và chỉ giúp mình giải quyết vấn đề trên.
 
/-(ãy biến đổi thành dạng Date (CvDate())

Cám ơn Các Bạn đã quan tâm đến câu hỏi của mình,
Khó khăn ở chỗ ngày đáo hạn trong dữ liệu export của chương trình quản lý công ty là kiểu text (27 AUG 2007) nên mình không biết cách lọc.
Mong các Bạn tham khảo và chỉ giúp mình giải quyết vấn đề trên.
Bạn thêm bên fải cột ni 1 cột trống ('F'?) & cho chạy macro mà mình tặng ni!
(Xài được nhớ cảm ơn nha!)
Mã:
Option Explicit

[b]Sub StrToDate()[/b]
 Dim StrCh As String:           Dim Wz As Long, DDai As Byte
 Dim Nam, Thang, Ngay, TrimStr As Variant
 Dim Rng As Range
 Wz = 1
 Do
    Wz = 1 + Wz:                StrCh = "E" & CStr(Wz)
    Set Rng = Range(StrCh)
    With Rng
        If Len(.Value) < 1 Then Exit Do
        TrimStr = Trim(.Value):         Nam = Right(TrimStr, 4):
        DDai = InStr(TrimStr, " "):     Ngay = Left(TrimStr, DDai - 1)
        TrimStr = Mid(TrimStr, DDai + 1):       Thang = Left(TrimStr, 3)
        Thang = Switch(Thang = "JAN", 1, Thang = "FEB", 2, Thang = "MAR", 3, Thang = "APR", 4, _
            Thang = "MAY", 5, Thang = "JUN", 6, Thang = "JUL", 7, Thang = "AUG", 8, _
            Thang = "SEP", 9, Thang = "OCT", 10, Thang = "NOV", 11, Thang = "DEC", 12)
        .Offset(0, 1).Value = DateSerial(Nam, Thang, Ngay)
    End With
 Loop
 Range("F2").Select
[b]End Sub [/b]
 
F2=DATE(YEAR("03 DEC 2007"),MONTH("03 DEC 2007"),DAY("03 DEC 2007"))
=03/12/2007
Hay là
e2=03 DEC 2007
F2=date(year(e2),month(e2),day(e2))=03/12/2007
Vấn đề còn lại dùng Dmin
Còn không dùng index match để liệt kê những KH cần xem xét
Và cũng có thể dùng công thức mảng

03/12/2007
03/12/2007
 
Cám ơn Bác SA_DQ,

Bác có cách nào khác ngoài viết chương trình không? Tại Em trước giờ Em chưa bao giờ sử dụng visual Basic trong excel. Mong Bác chỉ giáo tận tình, Em xin cám ơn.

Nhân đây em xin hỏi luôn, mình có thể viết code giống như một function đổi dữ liệu text sang date để chạy luôn trong hàm small được không? để đỡ phải chèn thêm một cột trung gian để chuyển đổi dữ liệu text sang date rồi mới lọc.
 
Đặt cột B1:B60 là makh
E1:E60 là daohan

Tại B62: nhập id KH cần xem xét
Tại E62: {=MIN(IF(makh=$B$62,VALUE(daohan),""))} nhớ format E62 là date
Ctr Shifi Enter công thức mảng
Lúc này sẽ o cần cột phụ
 
Cám ơn bạn ThuNghi,

Mình làm được rồi, cám ơn bạn nhiều lắm.!!!
 
Nếu có thể dùng cột phụ để chuyển ngày, dùng AutoFilter sau đó thêm hàm subtotal(5,denhan) denhan = là date(y,m,d)....Vừ theo dõi được list nợ của KH vừa lấy ngày MIN. Bạn vận dụng thử
 
Web KT

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

Back
Top Bottom