Sub TongHop()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Const TEN0 As String = "Tonghop" 'Ten sheet Tonghop
Dim wb As Workbook, ws As Worksheet, NB As String, NS As String
Dim tmp() As Variant, z As Long, r As Long, T As Variant
Dim KQ() As Variant, j As Long, k As Long, kMax As Long, maWS As String, tenWS As String
Set wb = ThisWorkbook: NB = wb.Name: NB = Left(NB, Len(NB) - 5)
ReDim KQ(1 To 1000000, 1 To 50)
For Each ws In wb.Worksheets
NS = ws.Name
If NS <> TEN0 Then 'Kiem tra: ten sheet <> ten sheet Tonghop
z = ws.Range("I" & ws.Rows.Count).End(xlUp).Row
If z > 9 Then
Erase tmp
tmp = ws.Range("E10:AW" & z).Value2: z = UBound(tmp, 1): kMax = UBound(tmp, 2)
maWS = ws.Range("K6"): tenWS = ws.Range("K7")
For r = 1 To z
T = tmp(r, 5)
If T <> Empty Then
j = j + 1
For k = 1 To kMax
KQ(j, k + 5) = tmp(r, k)
Next k
KQ(j, 1) = NB: KQ(j, 2) = NS
KQ(j, 3) = maWS: KQ(j, 4) = tenWS
End If
Next r
End If
End If
Next ws
If j Then
Sheets(TEN0).Range("B5").Resize(1000000, 50).ClearContents
Sheets(TEN0).Range("B5").Resize(j, 50) = KQ
End If
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub