Lọc dữ liệu nhiều lựa chọn (1 người xem)

Liên hệ QC

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

duong_nam_dao

Thành viên chính thức
Tham gia
2/3/08
Bài viết
89
Được thích
44
Em có một danh sách kèm theo. Em muốn lọc danh sách học sinh để khen thưởng.Khi em đánh số điểm vào ô c18 và ô c19 thì được kết quả lọc xuống ô a20 gồm những học sinh có điểm môn 1,môn 2,... lớn hơn hoặc bằng giá trị ô bên dưới.Ví dụ như lọc những học sinh có điểm văn >=7, toán >=8, sinh >=8, anh >= 6. Nhưng em muốn khi thay đổi lần thi thì kết quả lọc cũng được thay đổi vì các điểm thi mỗi lần khác nhau.Mong các bác giúp đỡ. Cám ơn các bác nhiều !
 

File đính kèm

Thử làm cho bạn bằng công thức nhé (cũng khá đơn giãn với Offset làm chủ lực)
 

File đính kèm

Upvote 0
Cái này bạn dùng Advanced filter cũng được nó đơn giản và nhẹ file
 
Upvote 0
Có thế mà em nghĩ mãi không ra. Cám ơn bác lần nữa
 
Upvote 0
Nhờ Mod xoá giúp bài

Tôi muốn tạo một File mục lục ít nhất 3 cấp: cấp 1 là đơn vị huyện, cấp 2 là đơn vị xã... như mẫu trong file đính kèm

Yêu cầu:
1- khi nút (ToggleButton) cấp 1 chìm xuống thì danh mục cấp 2 hiện ra, khi nút cấp 1 nổi lên thì danh mục cấp 2 ẩn đi.
2- khi nút cấp 2 chìm xuống thì danh mục cấp 3 hiện ra, khi nút cấp 2 nổi lên thì danh mục cấp 3 ẩn đi.

Lưu ý: Danh mục cấp cuối cùng là các ô Cell để Hyperlink đến các file cần tìm.
Tuy nhiên các bạn có thể đưa ra các phương án khác miến là đáp ứng được yêu cầu quản lý file theo yêu cầu riêng của người dùng.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Em làm theo file của bác ndu mãi mà không được. Em gửi file lên cho các bác xem. Không biết sai ở đâu, thôi nhờ bác làm hộ. Cám ơn bác rất nhiều !
 

File đính kèm

Upvote 0
Em làm theo file của bác ndu mãi mà không được. Em gửi file lên cho các bác xem. Không biết sai ở đâu, thôi nhờ bác làm hộ. Cám ơn bác rất nhiều !
File nhỉn khủng quá. Bạn có thể cắt nhỏ, hỏi từng phần.
Đâu cần name Hoten6 làm gì.
Công thức ở AN4 là nói lên cái gì vậy.
=IF(AND(OFFSET($P4:$S4,,($D$363-1)*4)>=$H$364:$R$364),ROWS($1:1),"")
Thiếu cái gì đó
AND(OFFSET($P4:$S4,,($D$363-1)*4)>=$H$364:$R$364) và cái gì nữa.
Phải là
AND(OFFSET($P4:$S4,,($D$363-1)*4)>=$H$364:$R$364),...)
Đã đặt name thì sao không đặt hết mà đặt có 1/2 vậy.
$AG$5:$AJ$14: ...
$AI$5:$AI$14:....
Nếu tên là 1 chữ thì chỉ lấy họ or tên ...
Vài chuyện góp ý!
 
Upvote 0
Đó chỉ là 1 trang trong file của em. Em đã bỏ bớt các phần không cần thiết và ghi rõ ý định trong file mới. Mong các bác xem hộ em.
 

File đính kèm

Upvote 0
Đúng vậy! Hãy xem thêm trong file kèm theo.

Cái này bạn dùng Advanced filter cũng được nó đơn giản và nhẹ file
Hướng dẫn sử dụng trước khi dùng:
* Đổi điểm chuẩn trước khi chọn lần kiểm tra (nếu cần)
* Nếu thêm Danh sách HS thì di chuyển 'Bộ Lọc' đến nơi khác thích hợp

PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [b17]) Is Nothing Then
   Dim lRow As Long:                Dim VTr As Byte
   Dim Rng As Range
   
   lRow = [a65432].End(xlUp).Row
   Range([t4], Cells(lRow, "T")) = Range([b4], Cells(lRow, "B")).Value
   VTr = Len(Target) - InStr(Target, " ")
   Set Rng = Choose(Right(Target, VTr), [c4], [g4], [k4], [o4]).Resize(lRow - 3, 4)
   Range([u4], Cells(lRow, "X")).Value = Rng.Value
   
   Range("T4:X" & lRow).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
        "H17:K18"), CopyToRange:=Range("G23:K23"), Unique:=False
 End If
End Sub
 

File đính kèm

Upvote 0
Các bác xem hộ em cái file Khen thuong moi ở mục 10 cái. Không biết vì sao em làm mà không được. Nhờ các bác ra tay giúp với
 
Upvote 0
Không biết tại sao em chạy file của bác nó cứ giật giật khung và chữ rồi mới cho kết quả. Có lẽ nó lọc chậm à? Có khắc phục được không? Nếu chạy nhanh hơn thì tốt vì file của em đã nặng rồi. Chờ tin bác
 
Upvote 0
Giảm rung, giật khi chạy công thức

Không biết tại sao em chạy file của bác nó cứ giật giật khung và chữ rồi mới cho kết quả. Có lẽ nó lọc chậm à? Có khắc phục được không? Nếu chạy nhanh hơn thì tốt vì file của em đã nặng rồi. Chờ tin bác
Vào Edit\Links nhấn nút Break Link -> Break Links -> Close

Nếu vẫn còn rung giật thì
  1. Dùng VBA
  2. Thay máy cấu hình cao hơn
 
Upvote 0
Xem thêm trong file đính kèm!

Macro, đây macro:
PHP:
Option Explicit
Sub TongHop()
 Dim Lrow As Long:                     Dim Rng As Range
 Lrow = [B65432].End(xlUp).Row
 With Sheets("Report")
   .Range("A3:A" & Lrow) = Range("B3:B" & Lrow).Value
   Set Rng = Choose([ag1].Value, [p3], [t3], [x3], [ab3]).Resize(Lrow, 4)
   .Range("B3:E" & Lrow).Value = Rng.Value
   .Range("A3:E" & Lrow).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=.Range( _
        "H1:K2"), CopyToRange:=.Range("G3:K3"), Unique:=False
   .Select
 End With
 
End Sub


duong_nam_dao chú ý hơn khi đưa file lên nha, cho dù là giả lập
 

File đính kèm

Upvote 0
Đáng tiếc là Advanced Filter không chơi chung với "dịch vụ" Union, nên cuối cùng muốn AF thì đành phải qua nhiều công đoạn trung gian không được hay cho lắm
Nếu AF để trích điểm ra trước, rồi dùng For quét qua để lấy tên học sinh xem bộ chắc không có vấn đề (đở tốn vùng phụ) nhưng cũng không hay
 
Upvote 0
Đúng vậy. Em đã lọc điểm giai đoạn ra trước rồi mới lọc danh sách khen thưởng nhưng không được. Các bác nghiên cứu xem có cách nào hay hơn và nhanh hơn không ? Em thì kém món này không nói làm gì. Làm tất cả trong một trang có được không? Ưu và nhược thế nào, mong các bác góp ý. Xn chân thành cảm ơn các bác !
 
Upvote 0
... Làm tất cả trong một trang có được không? ...
Hoàn toàn có thể làm được

Nhưng theo mình
  1. Để tiện lợi cho việc nhập dữ liệu thì nên để 1 sheet nhập liệu, kết quả lọc để sang sheet khác
  2. Còn tiện lợi cho việc căn chỉnh trang in
Để tất cả trong 1 sheet
  1. Nếu không dự phòng trước số dòng số liệu nhập để cách thì vướng vào phần công thức lọc
  2. Nếu chèn dòng vào để nhập đủ thì lại phải căn chỉnh lại trang in phần lọc
  3. Kiểm tra kết quả lọc cũng bất lợi (lần mãi mấy trăm dòng xuống dưới hoặc cột cuối phần nập liệu)
  4. ...........
 
Upvote 0
Em chưa hài lòng lắm về các cách làm. Em đang tập nên các bác thông cảm. Không biết vì sao em thấy file chạy chậm hẳn. Em file của em để các bác hộ. Máy tính của em là Lenovo Y410, chắc ko chậm lắm. Các bác bổ xung hộ nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Thường để thử xem nguyên nhân "chậm" là do đâu, tôi sẽ xóa bớt các sheet, xóa bớt Format, đến khi nào tìm ra được nguyên nhân thì thôi!
File của bạn, chỉ nội cái vụ màu mè cũng đủ "chóng mặt" rồi... Khi nào bạn hoàn tất công việc chính thì mới tính tới trang trí chứ
 
Upvote 0
Mình có một số ý kiến với bạn thế này. Để chương trình chạy nhanh
1.Hãy xây dựng đúng yêu cầu của mình về chương trình đã sau đó mới đến rút gọn, trang điểm thêm cho đẹp
2. Hạn chế dùng bớt công thức, nhất là các công thức dò tìm. Tối ưu đối với công thức
3. Nên đưa hết các dữ liệu vào một sheet Data sau đó trích xuất ra báo cáo, tổng hợp
4. Nếu được xây dựng sheet Data ra một file dữ liệu sau đó tạo 1 file báo cáo chứa các chương trình chạy riêng
5. Nên sử dụng VBA nhiều hơn.
6. Hạn chế sử dụng condation format
Một số ý kiến đối với bạn. Chúc bạn thành công
 
Upvote 0
Lọc dữ liệu!

Chào các bác, em nhờ các các giải quyết giúp em vướng mắc mà em đang gặp phải
Khi cộng dữ liệu trích lọc theo nhiều điều kiện (theo file đính kèm)
Rất mong nhận được nhận được sự giúp đỡ
Trân trọng/ Cương
 

File đính kèm

Upvote 0
Chào các bác, em nhờ các các giải quyết giúp em vướng mắc mà em đang gặp phải
Khi cộng dữ liệu trích lọc theo nhiều điều kiện (theo file đính kèm)
Rất mong nhận được nhận được sự giúp đỡ
Trân trọng/ Cương
Hình như cột C và D cho kết quả bằng nhau thì phải:
Đếm xem có bao nhiêu Container trực thuộc Cty cổ phần thì cũng giống như đếm xem có bao nhiêu cty thuộc dạng cổ phần dùng Container
Nếu bạn cho rằng kết quả sẽ khác hơn thì bạn hãy tính nhẩm bằng tay xem kết quả là bao nhiêu nhé?
 
Upvote 0
Không biết tại sao em chạy file của bác nó cứ giật giật khung và chữ rồi mới cho kết quả. Có lẽ nó lọc chậm à? Có khắc phục được không? Nếu chạy nhanh hơn thì tốt vì file của em đã nặng rồi. Chờ tin bác

Đã xử lý tốc độ. Hãy nhập dữ liệu và kiểm tra
 

File đính kèm

Upvote 0

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

Back
Top Bottom