Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error GoTo thoat
Dim rng, cll, ma_cds As Range
Dim i, k As Long
Dim arr As Variant
Set rng = Intersect(Target, Range("c8:c60000"))
If Not rng Is Nothing Then ' KETQUA
If Target.Columns.Count > 1 Then GoTo thoat
With Sheets("TTCSD")
sArr = .Range(.[A5], .[A60000].End(3)).Resize(, 22).Value2
End With
Union(rng.Offset(, 1).Resize(, 22), rng.Offset(, 22)).ClearContents
arr = rng.Resize(, 22).Value2
For Each cll In rng
k = k + 1 ': i = cll.Value
Set ma_cds = Sheets("TTCSD").[a4:a60000].Find(cll.Value, , , 1)
If Not ma_cds Is Nothing Then i = ma_cds.Value
If i <= UBound(sArr) Then
arr(k, 1) = sArr(i, 1) ' stt
arr(k, 2) = sArr(i, 2) ' ho ten csd
arr(k, 3) = sArr(i, 3) ' gioi tinh
arr(k, 5) = sArr(i, 4) ' nam sinh
arr(k, 6) = sArr(i, 6) 'cmnd
arr(k, 7) = sArr(i, 7) ' ngay cap
arr(k, 8) = sArr(i, 8) 'noi cap cmnd
arr(k, 9) = sArr(i, 19) 'shk
arr(k, 10) = sArr(i, 20) 'ngay cap hk
arr(k, 11) = sArr(i, 21) 'noi cap hk
arr(k, 12) = sArr(i, 9) 'xam canh
arr(k, 13) = sArr(i, 10) 'dia chi CSD
arr(k, 14) = sArr(i, 5) 'dan toc
arr(k, 16) = sArr(i, 12) 'ten vo/chong
arr(k, 17) = sArr(i, 14) ' nam sinh
arr(k, 18) = sArr(i, 16) 'cmnd vo-chong
arr(k, 19) = sArr(i, 17) 'ngay cap
arr(k, 20) = sArr(i, 18) 'noi cap
arr(k, 22) = sArr(i, 15) 'dan toc
'arr(k, 44) = sArr(i, 22) 'giay to kem theo
End If
Next
If k Then rng.Cells(1, 1).Resize(k, 22).Value = arr
End If
thoat:
Application.EnableEvents = True
If Err Then MsgBox Err.Description
End Sub