Try this:-
Results start sheet (2) "A1".
Sub MG17Jul25
Dim Rng As Range
Dim Dn As Range
Dim Q As Variant
Dim Twn As String
Set Rng = Range(Range("L2"), Range("L" & Rows.Count).End(xlUp))
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Dn In Rng
Twn = Dn & Dn.Offset(, 1)
If Not .Exists(Twn) Then
.Add Twn, Array(Dn, Dn(, 2), Dn(, 3), Dn(, 4))
Else
Q = .Item(Twn)
If Dn(, 3) < (Q(2)) Then Q(2) = Dn(, 3)
If Dn(, 4) > (Q(3)) Then Q(3) = Dn(, 4)
.Item(Twn) = Q
End If
Next
Sheets("sheet2").Range("A1").Resize(.Count, 4) = Application.Index(.items, Evaluate("row(" & 1 & ":" & .Count & " )"), Array(1, 2, 3, 4))
End With
End Sub
Regards Mick
Bookmarks