Sub Test()
Const sOut As String = "Output"
Dim a(1 To 10000, 1 To 4), ws As Worksheet, sh As Worksheet, m As Long, r As Long, k As Long
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error Resume Next: Sheets(sOut).Delete: On Error GoTo 0
Application.DisplayAlerts = True
For Each ws In ThisWorkbook.Worksheets
m = ws.Cells(Rows.Count, "V").End(xlUp).Row
For r = 21 To m
If Trim(ws.Cells(r, "Q").Value) = "HEALTHY" Then
k = k + 1
a(k, 1) = ws.Cells(r, "R").Value
a(k, 2) = ws.Cells(r, "P").Value
a(k, 3) = ws.Range("C6").Value
a(k, 4) = ws.Range("B14").Value
End If
Next r
Next ws
If k > 0 Then
Sheets.Add , Sheets(Sheets.Count)
ActiveSheet.Name = sOut
With Sheets(sOut)
.Range("A1").Resize(, 4).Value = Array("Names", "Date", "Grade", "Class")
.Range("A2").Resize(UBound(a, 1), UBound(a, 2)).Value = a
.DisplayRightToLeft = True
.Columns.AutoFit
End With
Else
MsgBox "No Data", vbExclamation: Exit Sub
End If
Application.ScreenUpdating = True
End Sub
Please learn how to click on the LIKE button