Cần giúp lọc dữ liệu học sinh sinh viên

Liên hệ QC

lpkhiem86

Thành viên mới
Tham gia
27/10/09
Bài viết
2
Được thích
0
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
 
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
Theo đề bài của Bạn Tôi nghĩ Bạn dùng hàm VLOOKUP để lọc thôi. Nếu lọc không được thì đưa file lên nhé.
Cấu trúc hàm
Hàm VLOOKUP

Chức năng: Hàm VLOOKUP là hàm dò tìm theo cột, sẽ trả về giá trị của một ô nằm trên một cột nào đó nếu thỏa mãn điều kiện dò tìm.

Cú pháp hàm: VLOOKUP(lookup_value,table_array,col_index_num,option_lookup)

- Lookup_value: là giá trị dùng để dò tìm, giá trị này sẽ được dò tìm trong cột đầu tiên của bảng dữ liệu dò tìm. Giá trị dò tìm có thể là một số, một chuỗi, một công thức trả về giá trị hay một tham chiếu đến một ô nào đó dùng làm giá trị dò tìm.

- Table_array: là bảng dùng để dò tìm, bảng dò tìm có thể là tham chiếu đến một vùng nào đó hay Name trả về vùng dò tìm. Bảng dò tìm gồm có Rj hàng và Ci cột (I,j >=1), trong đó cột thứ nhất của bảng dò tìm sẽ được dùng để dò tìm.

- Col_index_num: là số thứ tự của cột (tính từ trái qua phải) trong bảng dò tìm chứa giá trị mà ta muốn trả về. Col_index_num phải >=1 và <= số cột lớn nhất có trong bảng dò tìm, ngược lại hàm sẽ trả về #VALUE! hoặc #REF.

- Option_lookup: là tùy chọn xác định kiểu dò tìm, có 2 kiểu dò tìm:

  • True hoặc 1 hoặc để trống: là kiểu dò tìm tương đối, hàm sẽ lấy giá trị đầu tiên mà nó tìm được trên cột đầu tiên trong bảng dò tìm. Trong trường hợp tìm không thấy, nó sẽ lấy giá trị lớn nhất mà có giá trị nhỏ hơn giá trị dò tìm.
  • False hoặc 0: là kiểu dò tìm chính xác, hàm sẽ lấy giá trị đầu tiên mà nó tìm được trên cột đầu tiên trong bảng dò tìm. Trong trường hợp tìm không thấy, hàm sẽ trả về #N/A.

 
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
---------
Nêu chung chung, hiểu "chết liền". Không có flie diễn giải để mọi người dễ hiểu, "Giúp với" là sao? Bye! Hy vọng bài không bị xóa.
 
Lần chỉnh sửa cuối:
Sory.Mình gởi file thử mấy lần mà không được.help
 
Đây là file đính kèm do bạn lpkhiem86 nhờ gởi lên!
Nhắc lại yêu cầu cho dễ nhìn:
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
 

File đính kèm

  • HSSV.xls
    82.5 KB · Đọc: 60
Lần chỉnh sửa cuối:
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
Làm thử vầy bạn xem đúng ý không nhé!
 

File đính kèm

  • HSSV.rar
    9.8 KB · Đọc: 77
Mình lại giả lập cho bạn 1 file đây

PHP:
Option Explicit
Sub FilterFromAll()
 Dim Rng As Range, Clls As Range, sRng As Range
 Dim Sh As Worksheet, wSh As Worksheet:         Dim Timer_ As Double
  
 Timer_ = Timer
 Set Sh = Sheets("Ma"):                Set wSh = Sheets("S0")
 wSh.Columns("A:B").ClearContents:     Sheets("All").Select
 
 wSh.[A1].Resize(, 2).Value = [A1].Resize(, 2).Value
 Set Rng = Sh.Range(Sh.[A1], Sh.[A65500].End(xlUp))
 
 For Each Clls In Range([A2], [A65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If sRng Is Nothing Then
      Clls.Interior.ColorIndex = 38
   Else
      With wSh.[A65500].End(xlUp).Offset(1).Resize(, 2)
         .Value = Clls.Resize(, 2).Value
      End With
   End If
 Next Clls
 wSh.[D3] = Timer - Timer_
End Sub
Nếu có trên 250 sinh viên/học sinh trong danh sách thì nên theo cách của mình, khà, khà, . . !
 
Chỉnh sửa lần cuối bởi điều hành viên:
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
-------
Có cần thiết phải thêm một sheet DKienloc không, HSSV nghỉ học có thể làm ký hiệu chung trong sheet Dulieu. Lọc ra những HSSV đang học trong 1 sheet khác là được.
 
Mình giả lập lại file như của tác giả & tốc độ vẫn không suy suyễn

Macro chỉnh lại như sau:

PHP:
Option Explicit
Sub FilterFromAll()
 Dim Rng As Range, Clls As Range, sRng As Range
 Dim Sh As Worksheet, wSh As Worksheet:         Dim Timer_ As Double
  
 Timer_ = Timer
 Set Sh = Sheets("Ma"):                Set wSh = Sheets("S0")
 wSh.Columns("A:G").ClearContents:     Sheets("All").Select
 
 wSh.[A1].Resize(, 7).Value = [A1].Resize(, 7).Value
 Set Rng = Sh.Range(Sh.[A1], Sh.[A65500].End(xlUp))
 
 For Each Clls In Range([A2], [A65500].End(xlUp))
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If sRng Is Nothing Then
      Clls.Interior.ColorIndex = 38
   Else
      With wSh.[A65500].End(xlUp).Offset(1).Resize(, 7)
         .Value = Clls.Resize(, 7).Value
      End With
   End If
 Next Clls
 wSh.[I3] = Timer - Timer_
End Sub
 

File đính kèm

  • GPE.rar
    33.6 KB · Đọc: 49
Chỉnh sửa lần cuối bởi điều hành viên:
Theo đề bài của Bạn Tôi nghĩ Bạn dùng hàm VLOOKUP để lọc thôi. Nếu lọc không được thì đưa file lên nhé.
Cấu trúc hàm



Trích dẫn lời trực tiếp thì tôi làm được rồi còn việc trích dẫn bài nào đó để kèm theo, làm thế nào đưa lên được. Bạn có thể chỉ cách mình đưa lên được không?. Cám ơn.
 
Trích dẫn lời trực tiếp thì tôi làm được rồi còn việc trích dẫn bài nào đó để kèm theo, làm thế nào đưa lên được. Bạn có thể chỉ cách mình đưa lên được không?. Cám ơn.
Thông thường Mình trích toàn là copy bài nào đó và dán vào ko à. Câu lệnh để có chữ trích thì Bạn cũng biết rồi?
đoạn cần trích [....quote]. (Thay dấu .....bằng/)
 
Mình có sheet tổng dữ liệu HSSV đầy đủ( còn học và đã nghỉ) và có sheet mã số HSSV( hiện đang học).Có file kèm theo.
Mình muốn lọc dữ liệu từ sheet dữ liệu tổng theo điều kiện từ sheet mã số HSSV.
Nhờ mọi người giúp vói.
Thank.
1/Dùng hàm VLOOKUP.
Mã:
B1 =IF(COUNTIF(Dulieu!$B$1:$B$100;$A1);VLOOKUP($A1;Dulieu!$B$1:$I$100;COLUMNS($A1:B1);0);"")
2/Dùng hàm INDEX
Mã:
B1 =IF(COUNTIF(Dulieu!$B$1:$B$100;$A1);INDEX(Dulieu!C$1:C$100;MATCH($A1;Dulieu!$B$1:$B$100;0));"")

*Ghi chú: Tùy theo định dạng từng máy mà dùng dấu chấm phẩy ";" hay dấu phẩy "," giữa công thức nhé!
 
To MinhCong

Lấy file giả lập của mình mà chạy thử các hàm VLOOKUP() của bạn xem tốn bao nhiêu thời gian! Chủ nhất rỗi nên đề nghị với bạn vậy thôi!

Xin chào & chúc vui!
 
Lấy file giả lập của mình mà chạy thử các hàm VLOOKUP() của bạn xem tốn bao nhiêu thời gian! Chủ nhất rỗi nên đề nghị với bạn vậy thôi!

Xin chào & chúc vui!
Mình biết dùng code sẽ nhanh hơn, nhưng nói về code Mình chả biết tí tẹo nào cả. Mình cũng rất khoái mấy cái vụ viết code lắm, đang theo dõi cái Anh, Chị trên diễn đàn để học hỏi đấy!--=0
Cảm ơn Bạn nhé!

PS: Nếu đưa công thức của Mình vào name thì tốc độ cũng giảm đáng kể và dung lương file cũng giảm nhiều. (bạn so sánh xem dung lượng file khi bạn dùng code và Mình dùng name thử nhé)--=0
 
Lần chỉnh sửa cuối:
Bốn bài của tác giả này & cả bài này nên sớm vô sọt rác!

luonghuudung.data:
ThungRac.jpg

luonghuudung.dataL
ThungRac.jpg

ThungRac.jpg

ThungRac.jpg
 
Web KT
Back
Top Bottom