For i = 4 To 219
'For y = 4 To 219
For i = 4 To 219
Option Explicit
Sub baocao()
Dim i As Long
Dim y As Long
Dim Tmr As Double
Tmr = Timer()
For i = 4 To 219
'For y = 4 To 219
With ThisWorkbook.Sheets("GL")
Cells(i, 5) = WorksheetFunction.SumIfs(.Range("F:F"), .Range("i:i"), Cells(2, 5), .Range("a:a"), Cells(i, 1))
Cells(i, 6) = WorksheetFunction.SumIfs(.Range("g:g"), .Range("i:i"), Cells(2, 5), .Range("a:a"), Cells(i, 1))
End With
'Next
Next
Call MINI
MsgBox Timer() - Tmr
End Sub
Sub MINI()
Dim i As Long
'Dim y As Long
For i = 4 To 219
'For y = 4 To 219
With ThisWorkbook.Sheets("MINI")
Cells(i, 8) = WorksheetFunction.SumIfs(.Range("F:F"), .Range("a:a"), Cells(i, 1))
Cells(i, 9) = WorksheetFunction.SumIfs(.Range("N:N"), .Range("a:a"), Cells(i, 1))
End With
'Next
Next
End Sub
Sub xoadulieu()
Range("E4:I219").ClearContents
Range("L4:M219").ClearContents
Range("P4:Q219").ClearContents
End Sub
Option Explicit
Sub baocao()
Dim i&, GL As Worksheet, MN As Worksheet
Dim Tmr As Double
Tmr = Timer()
Set GL = Sheets("GL")
Set MN = Sheets("MINI")
For i = 4 To 219
With WorksheetFunction
Cells(i, 5) = .SumIfs(GL.Range("F:F"), GL.Range("i:i"), Cells(2, 5), GL.Range("a:a"), Cells(i, 1))
Cells(i, 6) = .SumIfs(GL.Range("g:g"), GL.Range("i:i"), Cells(2, 5), GL.Range("a:a"), Cells(i, 1))
Cells(i, 8) = .SumIfs(MN.Range("F:F"), MN.Range("a:a"), Cells(i, 1))
Cells(i, 9) = .SumIfs(MN.Range("N:N"), MN.Range("a:a"), Cells(i, 1))
End With
Next
MsgBox Timer() - Tmr
End Sub
Sub xoadulieu()
Range("E4:I219").ClearContents
Range("L4:M219").ClearContents
Range("P4:Q219").ClearContents
End Sub
Set GL = Sheets("GL")
lstRGL = GL.Range("A" & Rows.Count).End(xlUp).Row
...
Cells(i, 5) = .SumIfs(GL.Range("F2:F" & lstRGL), GL.Range("I2:I" & lstRGL), Cells(2, 5), GL.Range("A2:A" & lstRGL), Cells(i, 1))