✕
0 / 63

Excel UNIQUE function

Most customers ordered more than once. In E2, write one formula that lists each customer once: it fills the cells below by itself. Then total each customer's orders in F2:F6, and count the customers in H2.

=UNIQUE(B2:B13) returns a list, and Excel spills it into the empty cells below. Write it in E2 only; if something is in the way, you get #SPILL!. COUNTA(UNIQUE(B2:B13)) counts the list.

48 One of each, then the totals UNIQUE Core

orders.xlsx
Ready

Click a cell while typing to insert it, drag to select a range, F4 adds $, Esc cancels.

Tap a cell while writing a formula to insert it, or slide across cells for a range. The strip above the keyboard has = ( ) : , $.

The UNIQUE guide

=UNIQUE(B2:B13) lists each value in B2:B13 once, in the order it first appears. You write it in one cell and Excel fills, or spills, the list into the empty cells below. It works in Excel 2021, Excel for Microsoft 365 and Excel for the web.

CoreAbout 3 minutesBy Updated

The syntax

=UNIQUE(array, [by_col], [exactly_once])

UNIQUE ignores case, so "Marlow" and "marlow" count as one. It doesn't ignore spaces: "Marlow " with a space at the end is a separate value, so clean the column with TRIM first.

Spilling, and #SPILL!

A formula that returns a list fills as many cells as the list needs. Write it once, in the top cell, and leave the cells below empty. Click any cell in the list and Excel outlines the whole spilled range; the formula bar shows the formula greyed out in every cell but the first.

If one of those cells has anything in it, even a space, the formula shows #SPILL! instead of the list. Clear the cell in the way and the list appears. Filling the formula down by habit causes the same thing, because each copy blocks the one above.

Totals next to the list

With the distinct list in E2:E6, a total for each customer is =SUMIF($B$2:$B$13, E2, $C$2:$C$13), filled down. E2# means "the whole list that spills from E2": =COUNTA(E2#) counts it, and it grows with the list. In Excel 365 you can also write =SUMIF(B2:B13, E2#, C2:C13) once and the totals spill too; this practice sheet spills UNIQUE only, so fill SUMIF down here. A pivot table gives the same summary without formulas, but it needs a refresh when the data changes.

Count distinct values

=COUNTA(UNIQUE(B2:B13)) counts the list without showing it. =ROWS(UNIQUE(B2:B13)) gives the same number. If the range has empty cells, UNIQUE returns one of them as a 0 and it gets counted; leave blanks out of the range or filter them first with FILTER(B2:B13, B2:B13<>"").

Without UNIQUE

In Excel 2019 and earlier, use Data → Remove Duplicates on a copy of the column, or a pivot table with the field in Rows. Both give a list that doesn't update by itself. =SORT(UNIQUE(B2:B13)) gives a sorted list in versions that have UNIQUE.

Common mistakes

FAQ

How do I get a list of unique values in Excel?
Use =UNIQUE(range) in Excel 2021, Microsoft 365 or Excel for the web. The list spills into the cells below. In older versions, use Data > Remove Duplicates on a copy, or a pivot table.
How do I count unique values in Excel?
Use =COUNTA(UNIQUE(range)) or =ROWS(UNIQUE(range)). Leave empty cells out of the range, or UNIQUE returns one as 0 and it is counted.
Why does UNIQUE show #SPILL!?
The list needs empty cells below the formula, and one of them has something in it. Clear that cell, or move the formula to where there is room.
Is UNIQUE case-sensitive?
No. "North" and "north" count as the same value. Spaces do count, so a value with a trailing space appears twice; clean the column with TRIM first.

This task is in the timed data analyst and advanced Excel practice tests. What Excel interview tests check

All challenges

  1. 01Starter, 3 min Add it upSUM
  2. 02Starter, 3 min Find the averageAVERAGE
  3. 03Starter, 3 min Smallest and largestMIN, MAX
  4. 04Starter, 3 min Count what's thereCOUNT, COUNTA, COUNTBLANK
  5. 05Starter, 3 min Write once, fill downRelative references
  6. 06Core, 3 min Lock it with $Absolute references
  7. 07Starter, 3 min Percent of a totalPercentages
  8. 08Starter, 3 min Make the numbers readableNumber formats
  9. 09Core, 3 min Up or down by how much?Percent change
  10. 10Core, 3 min What you see vs what's storedROUND
  11. 11Core, 3 min The typical valueMEDIAN
  12. 12Core, 3 min Select to the end in one moveCtrl + Shift + arrow
  13. 13Starter, 3 min Sort without breaking rowsSort
  14. 14Starter, 3 min Filter to what mattersFilter
  15. 15Starter, 3 min Copy and paste a formulaCtrl+C, Ctrl+V
  16. 16Core, 3 min Paste values onlyPaste Special → Values
  17. 17Core, 3 min Highlight what's over targetConditional formatting
  18. 18Core, 3 min Spot the duplicatesDuplicate Values rule
  19. 19Core, 3 min Pass or fail?IF
  20. 20Core, 3 min Both or either?AND, OR
  21. 21Core, 3 min Exactly one of the twoXOR
  22. 22Core, 3 min Grade bands with nested IFNested IF
  23. 23Core, 3 min Count the ones that matchCOUNTIF
  24. 24Core, 3 min Add up the ones that matchSUMIF
  25. 25Core, 3 min Use a cell as the conditionCriteria in a cell
  26. 26Core, 3 min Partial matches with * and ?SUMIF, COUNTIF with wildcards
  27. 27Core, 3 min Count with two conditionsCOUNTIFS
  28. 28Core, 3 min Add up with two conditionsSUMIFS
  29. 29Core, 3 min Look it upVLOOKUP
  30. 30Core, 3 min Find the right bracketVLOOKUP approximate match
  31. 31Core, 3 min XLOOKUP, the modern wayXLOOKUP
  32. 32Core, 3 min Where is it in the list?MATCH
  33. 33Advanced, 3 min INDEX and MATCH togetherINDEX + MATCH
  34. 34Advanced, 3 min Lock just the row or the columnMixed references
  35. 35Advanced, 3 min Growth per year (CAGR)CAGR with ^
  36. 36Core, 3 min Use a rate from another sheetReferences to other sheets
  37. 37Core, 3 min Catch the error, not the bugIFERROR
  38. 38Core, 3 min Which invoices are missing?Compare two lists
  39. 39Core, 3 min Reconcile the ledger with the bankXLOOKUP or VLOOKUP + IFNA
  40. 40Core, 3 min Join text together&, CONCAT, PROPER
  41. 41Core, 3 min Split first and last namesLEFT, MID + FIND
  42. 42Core, 3 min Stray spaces that break a countTRIM
  43. 43Core, 3 min Flag the bad entriesTRIM, LEN, EXACT
  44. 44Advanced, 3 min Clean a bank descriptionTEXTBEFORE, TEXTAFTER, PROPER
  45. 45Core, 3 min Mistake hunt: #N/A everywhereFixing #N/A
  46. 46Core, 3 min Mistake hunt: hard-coded numbersReferences instead of typed numbers
  47. 47Core, 3 min Mistake hunt: numbers stored as textNumbers stored as text
  48. 48Core, 3 min One of each, then the totalsUNIQUE
  49. 49Core, 3 min Your first pivot tablePivot tables
  50. 50Advanced, 3 min Which category went up most?SUMIFS, change, lookup
  51. 51Core, 3 min How many days late?Date arithmetic
  52. 52Core, 3 min Turn text into real datesDATEVALUE
  53. 53Advanced, 3 min Month ends and working daysEOMONTH, NETWORKDAYS
  54. 54Core, 3 min Renewal datesEDATE
  55. 55Core, 3 min Days overdue and aging bandsDate difference, aging bands
  56. 56Core, 3 min How many late orders?Pick the tool
  57. 57Core, 3 min Sales per repPick the tool
  58. 58Core, 3 min Whose part is it?Pick the tool
  59. 59Core, 3 min Who gets the bonus?Pick the tool
  60. 60Core, 3 min Each region's sharePick the tool
  61. 61Advanced, 3 min Case: the supplier reportCase, five steps
  62. 62Advanced, 3 min Case: the monthly budgetCase, five steps
  63. 63Advanced, 3 min Case: the reorder listCase, five steps

The whole course, in order.

The challenges teach one move each. The course puts them in order and makes you do each one twice, the second time on data you haven't seen.

$29 One time. No subscription. Early-access price. Get Pro for $29

Secure checkout on Stripe.

  • CourseAll 63 ready lessons in order, plus every one we add. The first 5 are free. Each formula lesson ends with a second round on new data, no hints.
  • TestsYour score on the interview practice tests is free. Pro adds the full report: what went wrong on each task, and the lesson for it.
  • 14 daysNot what you hoped for? Full refund within 14 days, no questions. Refunds

Pro isn't open right now

Checkout is closed for the moment, so nothing was charged. Leave your email and we'll write once when it opens. The price is $29, one time.

One email when Pro opens. Unsubscribe in one click. Privacy

Continue

Sign in or create an account

No password. Your solved challenges then follow you to any device.

Signing in sets one cookie that keeps you signed in. Privacy