Tìm kiếm và liệt kê kết quả trùng

Liên hệ QC

saphiavic

Thành viên mới
Tham gia
9/4/10
Bài viết
32
Được thích
1
Nghề nghiệp
nghề mà ngồi trong mát, cái miệng cứ lia lịa, luôn
Nhờ anh chị, giúp em tìm kiếm giá trị trong một cột, nếu tìm kiếm được bao nhiêu kết quả trùng sẽ liệt kê tất cả kết quả trùng trong file.
 

File đính kèm

Nhờ anh chị, giúp em tìm kiếm giá trị trong một cột, nếu tìm kiếm được bao nhiêu kết quả trùng sẽ liệt kê tất cả kết quả trùng trong file.
Lâu lâu ôn bài, hông thôi quên hết, chứ bài dạng này có rất nhiều trên diễn đàn
Mình làm cho bạn 2 cách, bằng VBA & bằng công thức, muốn xơi kiểu nào thì chọn sheet đó mà "ngâm cú"
Thân
 

File đính kèm

Xin góp vui thêm 2 cách VBA: (làm từ lúc đầu hôm nhưng mạng cứ cà giựt nên tới giờ mới gửi lên được. Hic...)
- Cách 1: Sử dụng Array với sự kiện Worksheet_Change:
[GPECODE=vb]Private Sub Worksheet_Change(ByVal Target As Range)
Dim sArr, Arr(), i As Long, j As Long, k As Long, S As String
If Target.Address <> "$I$7" Or Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
On Error Resume Next
[H12:M65000,K7].Clear
S = [I7]
sArr = Range([A6], [A65000].End(xlUp)).Resize(, 6)
ReDim Arr(1 To UBound(sArr), 1 To 6)
For i = 1 To UBound(sArr)
If sArr(i, 2) = S Then
k = k + 1
Arr(k, 1) = k
Arr(k, 2) = sArr(i, 3)
Arr(k, 3) = sArr(i, 2)
For j = 4 To 6
Arr(k, j) = sArr(i, j)
Next
End If
Next
[H12].Resize(k, 6) = Arr
[K7] = k
[H12].CurrentRegion.Borders.LineStyle = 1
End Sub[/GPECODE]
- Cách 2: Sử dụng Advanced với sự kiện Worksheet_Change (với cách này thì phải sửa tiêu đề một chút để có thể sử dụng AdvancedFilter):
[GPECODE=vb]Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$I$7" Or Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
[H12:M65000,K7].Clear
[A5].CurrentRegion.AdvancedFilter 2, [I6:I7], [H11:M11]
With [H11].CurrentRegion
[K7] = .Rows.Count - 1
If .Rows.Count > 1 Then
With Range([H12], [H65000].End(xlUp))
.FormulaArray = "=ROW(R1:R" & [H11].CurrentRegion.Rows.Count - 1 & ")"
.Value = .Value
End With
End If
.Borders.LineStyle = 1
End With
End Sub[/GPECODE]
 

File đính kèm

Chào mọi người, mình cũng mới tập tành VBA và thấy chức năng tìm kiếm này cũng đang rất cần.
Nhưng không biết chỉnh lại theo hướng dẫn của các anh chị ở trên với nhu cầu tìm kiếm và trả kết quả o sheet khác thì phải làm như thế nào.
hì hụt hoài mà không đuợc. Mong các anh chị xem và giúp mình với
Cảm ơn ạ.
 

File đính kèm

Web KT

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

Back
Top Bottom