Trang 1 của 2 12 CuốiCuối
Kết quả 1 đến 10 của 12

Chủ đề: Có cách nào dùng hàm để lọc một danh sách?

  1. #1
    zmyr0893 Guest

    Có cách nào dùng hàm để lọc một danh sách?

    Em có một sheet chứa danh sách các học sinh đạt loại giỏi, khá... Nay em muốn dùng hàm để máy tự động lọc riêng học sinh giỏi một cột, khá một cột ( không dùng bộ lọc bằng tay của Excel như Data/filter ) thì làm thế nào? Em lọc cũng được nhưng lại xuất hiện các dòng trắng ở giữa, không đẹp. Mong các bác giúp đỡ, vì gần tổng kết học kì 1 rồi. Xin chân thành cảm ơn

  2. #2
    bacnv Guest
    Mình vêt thêm cho bạn một hàm LayHS
    Bạn thử xem sao.

  3. #3
    thangtnpt0021 Guest
    Trích dẫn Gửi bởi ngocnam
    Có một danh sách các học sinh đạt loại giỏi, khá... Nay em muốn dùng hàm để máy tự động lọc riêng học sinh giỏi một cột, khá một cột ( không dùng bộ lọc bằng tay của Excel như Data/filter ) thì làm thế nào?
    Giả sử CSDL của bạn chỉ gồm các trường [STT], [Ho], [Ten], [Diem], [XLoai]
    Dùng hàm mảng tự tạo như sau:

    Mã:
     Option Explicit
    Function DVLooKup0(CSDL As Object, XepLoai As String) As Variant
        Dim MDLieu(29, 2) As Variant
     'Nếu vẫn còn bệnh thành tích thì phải tăng số 29 đến Max(STT)
        Dim iJ As Integer, iDem As Integer
                                                                Const MaxRec = 99
       Application.ScreenUpdating = 0:          iDem = 0
      For iJ = 1 To 29
             MDLieu(iJ, 1) = "":    MDLieu(iJ, 2) = "":             MDLieu(iJ, 0) = ""
       Next iJ
     For iJ = 1 To MaxRec
        If IsNull(CSDL.Cells(iJ, 1)) Then Exit For    
        If CSDL.Cells(iJ, 5) = XepLoai Then
            MDLieu(iDem, 0) = CSDL.Cells(iJ, 1):            MDLieu(iDem, 2) = CSDL.Cells(iJ, 5)
            MDLieu(iDem, 1) = CSDL.Cells(iJ, 2):            iDem = 1 + iDem
        End If
     Next iJ
    Application.ScreenUpdating = True
                                                DVLooKup0 = MDLieu
    End Function
    (/ì là hàm mảng nên kết quả sẽ thể hiện trên 1 vùng ô;
    bạn phải chọn vùng ô khoảng 20 hàng & ba cột; nhập hàm & ấn cùng lúc tổ hợp fím!

  4. #4
    vannguchau Guest
    Nếu bạn không dùng Advance filter, sort hay là VBA thì bạn dùng các hàm match, index và offset của excel cũng tốt lắm
    Bạn test thử nhé

  5. #5
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Nếu bạn ngại về VBA thì bạn có thể dùng Advance filter.
    Tại sao dùng filter lại có dòng trống nhỉ ? Bạn xem lại Điều kiện lọc đi.

  6. #6
    thailee Guest
    Toi muon su dung ham LayHS de loïc mot danh sach co nhieu cot thì phai lam nhu the nao ? Nho anh NVSON chi giup . Xin cam on .

  7. #7
    haiminh464 Guest

    Giúp em lấy HSG, HSTT với
    Vấn để của em đã nhận được sự giúp đỡ nhiệt tình của các bác trên GPE nên đã được giải quyết xong và được thể hiện trong phần " Hỗ trợ CNLớp THCS - XLHL theo QC 40". Chi tiết tại mục phần chữ ký của em

    Nên em xóa tập tin dính kèm trong bài này để giải phóng tài nguyên

  8. #8
    phatthinh2010 Guest
    Đơn giản là bạn cứ for từ dòng đầu đến dòng cuối nếu thỏa mãn thì đưa ra, sau đo sắp xếp lại và đánh số thứ tự.

  9. #9
    doanthanhpro Guest
    Trích dẫn Gửi bởi boyxin
    sặc, nói thế thì em i tờ làm sao nổi, làm giúp em luôn đi
    Xem file đính kèm nhé.

  10. #10
    leequyetkt Guest
    Trích dẫn Gửi bởi chibi
    Xem file đính kèm nhé.
    - Liệu có cách nào dùng công thức đơn giản không dùng thêm cột phụ mà vẫn làm được như vậy không?
    - Dùng cái này ở máy cơ quan (nhiều người dùng chung máy) em lo mấy chương trình diệt virus nó gặm mất thì toi

    Em có cái này nữa, giúp em với nhé

    </div>
    </div>
    </div>
    Vấn để của em đã nhận được sự giúp đỡ nhiệt tình của các bác trên GPE nên đã được giải quyết xong và được thể hiện trong phần " Hỗ trợ CNLớp THCS - XLHL theo QC 40". Chi tiết tại mục phần chữ ký của em

    Nên em xóa tập tin dính kèm trong bài này để giải phóng tài nguyên

Trang 1 của 2 12 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •