To generate a series of dates by year, you can use the SEQUENCE function together with YEAR, MONTH, and DAY functions. In the example shown, the formula in E5 is:


which generates a series of 12 dates, incremented by one year, beginning with May 1, 2019.

Generic formula



The SEQUENCE function is a dynamic array function that can generate multiple results. Like other dynamic array functions, SEQUENCE outputs an array of results that "spill" onto the worksheet in a "spill range".

SEQUENCE can generate results in rows, columns, or both. In this case, SEQUENCE is configured to output an array of numbers that is 12 rows by 1 column:


The starting number is the year value from B5, and the step value defaults to 1, so SEQUENCE outputs an array like this:


This array is returned to as the year argument inside the DATE function, which causes results to spill into the range D5:D16. MONTH and DAY values are picked up directly from the date in B5:


When formatted as dates, the final result is 12 dates, one year apart, beginning with May 1, 2019.

Year only option

To use SEQUENCE to output years only, based on the same starting date, the formula in F5 is:


As before, SEQUENCE is configured to output 12 numbers, beginning with the year in B5, incremented by 1. The final results spill into F5:F16.

Dynamic Array Formulas are available in Office 365 only.
Dave Bruns Profile Picture

AuthorMicrosoft Most Valuable Professional Award

Dave Bruns

Hi - I'm Dave Bruns, and I run Exceljet with my wife, Lisa. Our goal is to help you work faster in Excel. We create short videos, and clear examples of formulas, functions, pivot tables, conditional formatting, and charts.