Nhờ anh em tách giúp danh sách xóm ra nhiều danh sách bằng combo box

Liên hệ QC

truongtrungviet

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
9/10/07
Bài viết
53
Được thích
7
Nghề nghiệp
Giáo viên
Yêu cầu:
  1. Từ SOPHOCAP lọc ra danh sách những người thuộc XÓM 1 vào Sheet XOM.
  2. Ở sheet XOM có một Combo box để lọc các xóm khác. ( Ví dụ: Từ Combobox mình gõ 1 thì sẽ lọc ra danh sách XÓM 1, tương tự gõ 2,3,4,5,6,7,8 thì lọc ra xóm đã nhập vào Combo box.)
Xin cảm ơn rất nhiều.
 
Bạn xem trong file kèm theo của mình

Chọn mã xóm tại [Z1] của trang 'Xom'
 

File đính kèm

Upvote 0
Bạn có thể giải thích giúp mình tường tận các dòng code này không ?


Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [z1]) Is Nothing Then
   Dim Sh As Worksheet, Rng As Range, Rws As Long
   
   Set Sh = ThisWorkbook.Worksheets("SOPHOCAP")
   Rws = Sh.[B6].CurrentRegion.Rows.Count
   Sh.Range("B5:AA" & Rws).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sh.Range( _
        "CV2:CV3"), CopyToRange:=Sh.Range("CA5:CZ5"), Unique:=False
   [B9].Resize(Rws, 30).ClearContents
   Sh.[cb5].CurrentRegion.Offset(1).Copy Destination:=[B9]
 End If
End Sub
 
Upvote 0
Bạn có thể giải thích giúp mình tường tận các dòng code này không ?


Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [z1]) Is Nothing Then
   Dim Sh As Worksheet, Rng As Range, Rws As Long
   
   Set Sh = ThisWorkbook.Worksheets("SOPHOCAP")
   Rws = Sh.[B6].CurrentRegion.Rows.Count
   Sh.Range("B5:AA" & Rws).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sh.Range( _
        "CV2:CV3"), CopyToRange:=Sh.Range("CA5:CZ5"), Unique:=False
   [B9].Resize(Rws, 30).ClearContents
   Sh.[cb5].CurrentRegion.Offset(1).Copy Destination:=[B9]
 End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dùng sự kiện Worksheet_Change trên sheet "XOM"
If Not Intersect(Target, [z1]) Is Nothing Then
Nếu cell [Z1] không rỗng thì
Dim Sh As Worksheet, Rng As Range, Rws As Long
Khai báo các biến Sh, Rng, Rwg
Set Sh = ThisWorkbook.Worksheets("SOPHOCAP")
Gán giá trị biến đối tượng Sh tham chiếu đến sheet "SOPHOCAP"
Rws = Sh.[B6].CurrentRegion.Rows.Count
Gán biến Rws giá trị là số hàng cuối cùng trong vùng dữ liệu ở sheet "SOPHOCAP"
Sh.Range("B5:AA" & Rws).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sh.Range( _
"CV2:CV3"), CopyToRange:=Sh.Range("CA5:CZ5"), Unique:=False
Dùng AdvancedFilter để lọc vùng B5:AA&Rws, điều kiện lọc: vùng CV2:CV3, vùng gán kết quả CA5:CZ5
[B9].Resize(Rws, 30).ClearContents
Xóa dữ liệu vùng [B9] mở rộng Rws hàng & 30 cột ở sheet XOM
Sh.[cb5].CurrentRegion.Offset(1).Copy Destination:=[B9]
Ở sheet SOPHOCAP, chọn vùng dữ liệu dính chùm với cell [CB5], nhảy xuống 1 hàng, copy đem qua dán bắt đầu từ cell [B9] ở sheet XOM
End If
End Sub
Hổng làm nữa
Híc, mình chỉ thắc mắc sao bác Sa không sử dụng Autofilter cho nó "phẻ" nhỉ
 
Upvote 0
Web KT

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

Back
Top Bottom