See my attached sheet for two different methods of accomplishing this.
Method 1 used Advanced Filter to list just the unique names from the list in column A, then used MAX and MIN array functions (applied with Ctrl+Shift+Enter) to return the highest and lowest values associated with each unique name in the list. Only problem with Advanced Filter is it is not dynamic by default. If the original list changes, the unique list won't change until you run the Advanced Filter>Unique Values again. This can be overcome in VBA, but adds more to the task.
Method 2 used 2 array (Ctrl+Shift+Enter) formulas:
In cell H2:
Formula:
=INDEX($A$1:$A$1000,MATCH(0,COUNTIF($A$1:$A$1000,"<"&$A$1:$A$1000),0))
In cell H3 and filled down:
Formula:
=IF(COUNTIF($A$1:$A$1000,">"&H2),INDEX($A$1:$A$1000,MATCH(COUNTIF($A$1:$A$1000,"<="&H2),COUNTIF($A$1:$A$1000,"<"&$A$1:$A$1000),0)),"")
Then used the same MAX and MIN array formulas as in Method 1.
Hope it helps! Let me know if you have any questions.
- Moo
Bookmarks