» Look up unique values using VBA in Microsoft Excel
VBA macro tip contributed by Erlandsen Data Consulting offering Microsoft Excel Application development, template customization, support and training solutions
CATEGORY - Custom Functions , Printing in VBA
VERSION - All Microsoft Excel Versions
you just supply the range you want to get the unique items from and the index number for the unique item you want to return.
You can also use the function to return the count of uniqe values/items in a range.
Function UniqueItem(InputRange As Range, ItemNo As Long) As Variant
Dim cl As Range, cUnique As New Collection, cValue As Variant
Application.Volatile
On Error Resume Next
For Each cl In InputRange
If cl.Formula <> "" Then
cUnique.Add cl.Value, CStr(cl.Value)
End If
Next cl
UniqueItem = ""
If ItemNo = 0 Then
UniqueItem = cUnique.Count
Else
If ItemNo <= cUnique.Count Then
UniqueItem = cUnique(ItemNo)
End If
End If
On Error GoTo 0
End Function
Examples:=UniqueItem(A1:A100,2) will return the 2nd unique value in the range A1:A100.
=UniqueItem(A1:A100,0) will return the count of unique values in the range A1:A100.
Book Store:
Recommended Books:
- Excel 2002 Power Programming with VBA
- The Intelligent Investor: The Classic Bestseller on Value Investing
- The McGraw-Hill 36-Hour Course in Finance for Nonfinancial Managers
- Financial Modeling - 2nd Edition
- Positioning: The Battle for Your Mind
- Successful Business Planning in 30 Days: A Step-By-Step Guide for Writing a Business Plan and Starting Your Own Business
No comments have been submitted.

