Dynamic Arrays & Spill Functions
Use FILTER, UNIQUE, SORT, SEQUENCE and XLOOKUP to write one formula that returns multiple results automatically.
✅ What You Will Learn
Dynamic array functions, introduced in Microsoft 365 and Excel 2021, fundamentally changed how Excel handles formulas. A single formula can now return a range of results that automatically "spills" into adjacent cells — no Ctrl+Shift+Enter, no helper columns, no copying down.
Before dynamic arrays, extracting unique values from a list required complex formulas or a Pivot Table. Now =UNIQUE(A2:A100) does it in one keystroke. Filtering a table for rows matching a condition used to require Advanced Filter or SUMPRODUCT tricks — now =FILTER(A2:D100, C2:C100="North") returns the matching rows instantly.
The # (hash) operator references a spill range. If UNIQUE() in B2 spills to B2:B8, you can reference the entire output as B2#. This makes chaining functions together elegant and powerful.
📋 Sales data — input for dynamic array formulas
| Order ID | Region | Product | Amount (₹) | Status |
|---|---|---|---|---|
| O-101 | North | Laptop | 45000 | Delivered |
| O-102 | South | Mobile | 12000 | Delivered |
| O-103 | North | Tablet | 28000 | Pending |
| O-104 | East | Laptop | 52000 | Delivered |
| O-105 | South | Laptop | 49000 | Cancelled |
| O-106 | North | Mobile | 15000 | Delivered |
Syntax
Examples
📌 Key Points to Remember
- ✓Dynamic array functions require Microsoft 365 or Excel 2021 — not available in Excel 2016/2019
- ✓Spill range: if a formula result occupies B2:B10, reference it all as B2#
- ✓If anything blocks the spill range (non-empty cell), Excel shows a #SPILL! error — clear the blocking cells
- ✓Combine FILTER + SORT + UNIQUE to replace complex Pivot Table setups with a single formula chain
- ✓XLOOKUP (covered in VLOOKUP & XLOOKUP topic) is also a dynamic array function in 365
🏢 Real-World Application
E-commerce analysts use FILTER to instantly extract open orders, high-value transactions, or cancelled items from a master order table — without filtering the sheet and without Pivot Tables. HR teams use UNIQUE to generate headcount lists by department dynamically. These formulas update automatically when new rows are added to the source table.
⚠️ Common Mistakes to Avoid
❓ Frequently Asked Questions
Can I use FILTER inside a Pivot Table?
No — Pivot Tables have their own filtering system. Use FILTER on regular table data outside Pivot Tables. For interactive filtering with Slicers, Pivot Tables are still the better choice.
How do I count the results of a FILTER formula?
Wrap in ROWS: =ROWS(FILTER(A2:A100, B2:B100="North")). This counts how many rows matched the filter condition.
Does SORT work on text alphabetically?
Yes — SORT(range, 1, 1) sorts column 1 ascending (A→Z for text, smallest→largest for numbers). Use -1 for descending.
✏️ Practice Exercise
Build a live order dashboard using dynamic arrays. Source data: 30 order rows with Region, Category, Amount, Status. Use: (1) FILTER to show only "Pending" orders above ₹20,000, (2) UNIQUE+SORT to list distinct regions, (3) SEQUENCE+TEXT to generate a 6-month header row (Jan-2026 through Jun-2026), (4) SORTBY to rank the data by Amount descending.
Learn Excel with Live Trainer Guidance
These tutorials give you the foundations. Our live Excel course at EVIKA Academy, Noida teaches you to build real dashboards on actual business data — with a trainer who uses Excel professionally every day.