Do you mean like this?
Sub test()
Dim ws As Worksheet, LR As Long, n As Long, x, myList, a, e, col As String
ReDim myList(1 To Worksheets.Count)
For Each ws In Worksheets
Select Case ws.Name
Case "Data 1", "Data 2", "Data 3", "Report 1", "Report 2"
col = IIf(ws.Name = "Report 2", "m", "a")
LR = ws.Range(col & Rows.Count).End(xlUp).Row
If LR > 3 Then
x = Application.Max(ws.Range(col & "4:" & col & LR)) + 1
If IsEmpty(a) Then
ReDim a(1 To x) As Boolean
Else
If x > UBound(a) Then ReDim Preserve a(1 To x)
End If
x = ws.Evaluate("min(if(isna(match(row(1:" & LR & ")," & _
col & "4:" & col & LR & ",0)),row(1:" & LR & ")))")
n = n + 1: myList(n) = x
For Each e In ws.Range(col & "4:" & col & LR + 1).Value
If e <> "" Then a(e) = True
Next
End If
End Select
Next
If n > 0 Then
ReDim Preserve myList(1 To n)
x = Application.Match(False, a, 0)
MsgBox "Minimum = " & x & vbLf & "out of " & Join(myList, ", ")
Else
MsgBox "No data available"
End If
End Sub
Bookmarks