Course
Whether you’re wrangling budgets or building dashboards, dynamic arrays have transformed what’s possible in Excel.
If you are unfamiliar with the idea of dynamic arrays, let me help you situate this. Dynamic arrays, to be clear, allow formulas to spill their results into adjacent cells automatically, and the Excel SEQUENCE()
is one way to create dynamic arrays. This is the kind of idea that our Excel Fundamentals skill track will help you tease apart, if you are interested in learning more.
What Is Excel SEQUENCE()?
Before we jump into the nuts and bolts, let’s get clear on what SEQUENCE()
actually does. In this section, we’ll introduce the function and lay the foundation for all the clever tricks and practical uses that you will see later on.
SEQUENCE()
is one of Excel’s dynamic array functions, as I mentioned earlier. It was introduced to help users like you and me create arrays of sequential numbers without having to do that tedious thing where you drag formulas or fill down columns. With a single formula, you can instantly generate a list of numbers and, what's more, it updates automatically as your data changes.
Picture this: You want to create a numbered list for invoices, a set of row indices for lookup operations, or a scheduling calendar that adjusts as dates shift. In each case, SEQUENCE()
turns what used to be a chore into a breeze. (These are the examples I’ll share in a bit.)
Excel SEQUENCE() Syntax and Parameters
Now that you know why SEQUENCE()
is so useful, let’s break down exactly how to use it. We’ll walk through its syntax, explore each parameter, and see how it all fits together in real formulas.
The function’s syntax is simple, but the possibilities are extensive. Here’s the core structure:
=SEQUENCE(rows, [columns], [start], [step])
Let’s make sense of these arguments:
-
rows
(required): The number of rows to fill with sequential numbers. -
[columns]
(optional): The number of columns to fill. If omitted, defaults to1
. -
[start]
(optional): The starting number. Defaults to1
. -
[step]
(optional): The value to increment for each subsequent number. Defaults to1
.
You don’t have to use every parameter—Excel fills in the blanks with defaults for you.
Excel SEQUENCE() Basic Examples
Let’s see SEQUENCE()
in action with a few quick examples. Each one connects directly to common tasks you’ll face in Excel.
Create a simple list
=SEQUENCE(10)
This formula spills numbers 1 through 10 into the cells below. No dragging required!
Generate a block of numbers
=SEQUENCE(3, 4, 5, 2)
You’ll get a matrix with 3 rows and 4 columns, starting at 5 and jumping by 2 each time. Useful for building grids, seating charts, or simulation models.
Produce a column of dates
If you want a sequence of dates instead of numbers, just add to the current date:
=SEQUENCE(7, 1, TODAY(), 1)
Format the output cells as dates, and you have a rolling week that updates every day.
As you experiment, remember: each parameter unlocks a new level of control.
Excel SEQUENCE() in Everyday Work
So far, we’ve covered the mechanics with simple example. But how does SEQUENCE()
fit into real spreadsheets? In this section, we’ll connect the function to workflows that save time and reduce mistakes.
Automating dynamic lists for reporting
Suppose you’re building a monthly report and want a flexible list of line items that matches the number of transactions each month, and you want this behavior to be dynamic. No surprises for guessing: SEQUENCE()
is the way to go.
For example, if your transaction count is in cell B1, use:
=SEQUENCE(B1)
As B1 changes, your numbered list expands or contracts. This is perfect for dashboards, printouts, and data validation.
Powering dynamic ranges for lookups and formulas
You might be wondering: Can SEQUENCE()
work with other functions? The answer is definitely yes. SEQUENCE()
is often paired with INDEX()
, SORT()
, and FILTER()
.
For instance, you can generate a “top n” leaderboard that automatically updates as your data changes:
=INDEX(SORT(A2:A6, 1, -1), SEQUENCE(2))
This example pulls the top two values from a sorted list.
Creating calendar templates and date sequences
A lot of people (myself included) use Excel as a type of calendar or scheduler. SEQUENCE()
helps with this, too. Here I am showing how to start with the first day of the month and fill the next 30 days:
=SEQUENCE(30, 1, DATE(2024, 7, 1), 1)
In this case, remember to format as Date. (I made sure to leave this part in the screenshot as a reminder.)
More Advanced Techniques with SEQUENCE()
In this section, we’ll discover how SEQUENCE()
becomes even more powerful when you combine it with other Excel dynamic array functions.
Creating dynamic matrix calculations
Suppose you want to simulate a multiplication matrix. With just one formula, you can dynamically generate a full multiplication grid.
=SEQUENCE(10, 1) * TRANSPOSE(SEQUENCE(10, 1))
This formula is a way to simulate matrix multiplication patterns (really, vector outer product behavior) in Excel using dynamic arrays. The trick is to combine SEQUENCE()
with TRANSPOSE().
Conceptually, this is what we are doing:
Generating rolling or offset lists
Sometimes you need a sequence that doesn’t start at 1, or that skips values. In this example, I’ll use SEQUENCE()
to generate a list of only the odd numbers. You can rejigger this formula for other kinds of offset lists. A list of only weekdays might be another example you can try.
=SEQUENCE(10, 1, 11, 2)
Integrating SEQUENCE() into conditional formulas
When combined with functions like IF()
or FILTER()
, SEQUENCE()
powers more complex logic. For example, to return the rows where sales exceed $1,000:
=INDEX(A2:A100, FILTER(SEQUENCE(ROWS(A2:A100)), B2:B100 > 1000))
This approach is perfect for responsive dashboards and interactive reports.
Troubleshooting and Limitations
You might run into a few roadblocks as you use SEQUENCE()
, especially if you’re sharing workbooks or working with older versions of Excel. I didn’t have time to go through every possible example in this tutorial, but I’ll mention the things that showed up as I worked through it.
Compatibility: Where does SEQUENCE() work?
SEQUENCE()
requires Excel 365 or Excel 2019. If you open a file with SEQUENCE()
in older versions, or if you are in compatibility mode, you’ll see a #NAME?
error. If the SEQUENCE()
function name doesn’t autofill - that’s a tell.
Dealing with spill errors and array handling
Sometimes you’ll see a #SPILL!
error. That simply means the cells where SEQUENCE()
wants to “spill” its results aren’t empty. Clear the obstructing cells, and the function will work as intended. In my case, when I was working through this article, I accidentally used a second SEQUENCE() function where an earlier SEQUENCE() needed the space. That gave a #SPILL!
error also because it was a circular logic.
Also, if you’re using SEQUENCE()
in a formula that feeds into another function, make sure your ranges line up and that you’re not mixing array and non-array formulas in ways Excel can’t handle. So keep an eye on that.
Limits on output size
This one might not come up so often, but I’ll mention it anyway. Excel supports up to 1,048,576 rows and 16,384 columns per worksheet. If you try to create a sequence larger than this, you’ll naturally get an error.
Conclusion
SEQUENCE()
is one many very interesting Excel functions that, if you master, will transform the way you work in Excel.
The Excel functions are definitely interesting and worth practicing. The next time you catch yourself dragging formulas, remember: With SEQUENCE()
, you can let Excel do the heavy lifting. Take our Excel Fundamentals skill track to keep learning new functions and efficiency tips. I've gone through it, and it's time well spent!

I'm a data science writer and editor with contributions to research articles in scientific journals. I'm especially interested in linear algebra, statistics, R, and the like. I also play a fair amount of chess!