Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim GiaTriLoc As Integer, GiaTriKiemTra As Integer
Dim lHangXuat As Long, i As Long
On Error Resume Next
If Target.Row = 5 And Target.Column = 8 Then
GiaTriLoc = Target.Value: i = 0: lHangXuat = 0
GiaTriKiemTra = Val(ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 0))
Do While GiaTriKiemTra <> 0
If GiaTriKiemTra = GiaTriLoc Then
'Thông thường trước khi xuất ra phải xóa
'Bạn có thể thêm code vào đây
'Xuất ra theo vị trí yêu cầu
'Bạn cũng có thể sửa code lại để đưa báo cáo ra vị trí khác
With ThisWorkbook.Worksheets("Sheet1").Range("H8")
.Offset(lHangXuat, 0) = ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 1).Value
.Offset(lHangXuat, 1) = ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 3).Value
.Offset(lHangXuat, 2) = ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 4).Value
.Offset(lHangXuat, 3) = ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 5).Value
End With
lHangXuat = lHangXuat + 1
End If
i = i + 1
GiaTriKiemTra = Val(ThisWorkbook.Worksheets("Sheet1").Range("A2").Offset(i, 0))
Loop
End If
End Sub