Excel · Dynamic Arrays

Unlocking the Power of Dynamic Arrays in Excel: The Game-Changing Functions Every Organisation Should Be Using

Dynamic Arrays have fundamentally changed what Excel can do. FILTER, SORT, UNIQUE, and SEQUENCE eliminate entire categories of manual work — here's how to use them well.

What are Dynamic Arrays?

Introduced in Excel 365 and Excel 2021, Dynamic Arrays allow a single formula to return multiple results that automatically spill into adjacent cells. This eliminates the need for complex array formulas entered with Ctrl+Shift+Enter, and makes many previously difficult tasks straightforward.

The key functions in the Dynamic Array family are: FILTER, SORT, SORTBY, UNIQUE, SEQUENCE, RANDARRAY, and XLOOKUP.


FILTER: The most powerful of the set

FILTER returns only the rows from a range that meet a condition — without pivot tables, without helper columns, without VBA.

=FILTER(A2:D100, C2:C100="Closed", "No results")

This returns every row where column C equals "Closed". The third argument is what to show if nothing matches.

Combining multiple conditions

=FILTER(A2:D100, (C2:C100="Closed") * (B2:B100="London"))

Multiply conditions for AND logic. Use + for OR logic. This replaces dozens of manual filter steps in dashboards and reports.


SORT and SORTBY

SORT returns a sorted version of a range — dynamically, so it updates whenever the source data changes.

=SORT(A2:B50, 2, -1)

This sorts the range by column 2 in descending order. SORTBY allows sorting by a column that isn't in the output range — useful for ranked dashboards and leaderboards.


UNIQUE: Instant distinct value lists

UNIQUE extracts a list of distinct values from a column — replacing complex pivot-based approaches or manual deduplication.

=UNIQUE(B2:B200)

Combine with SORT for a sorted distinct list. Combine with COUNTA to count unique items dynamically:

=COUNTA(UNIQUE(B2:B200))

SEQUENCE: Generating number and date series

SEQUENCE generates arrays of sequential numbers. It's particularly useful for building dynamic calendars, rolling date ranges, and numbered lists.

=SEQUENCE(12, 1, DATE(2025,1,1), 30)

This produces 12 dates starting January 1 2025, each 30 days apart — a rolling monthly calendar in one formula.


Combining functions: The real power

The real leverage comes from nesting these functions together. For example — a dynamically filtered, sorted, unique list of locations with open incidents:

=SORT(UNIQUE(FILTER(C2:C200, D2:D200="Open")))

This replaces what used to require a pivot table, a helper column, and a manual refresh step.

Practical tip: Use Dynamic Arrays as the data source for named ranges, which then feed into charts and dashboard elements. Everything updates automatically when the source data changes — no more manual refreshes.


What this means for organisations

Dynamic Arrays dramatically reduce the complexity of building live dashboards in Excel. Reports that previously required VBA or Power Query can often be rebuilt as a handful of formula-driven sheets that any analyst can maintain. The result: faster reporting cycles, fewer errors, and dashboards that stay current without manual intervention.


Conclusion

If your organisation is still on Excel 2019 or earlier, upgrading to Microsoft 365 unlocks this entire function family. The productivity gain is substantial — these aren't incremental improvements, they're a fundamentally different way of working with data in Excel.