This formula uses the named ranges “amounts” (D5:D104) and “dates” (C5:C104). But we don’t want to hard-code dates, we want Excel to generate these dates for us. Normally, this is a pain, because if you add month names as text (i.e. “January”, “February”, “March”, etc.) in column F you have to go to extra trouble to create dates you can use for criteria. However, in this case, we use a simple trick to make things easier: In column F, instead of typing month names, we add actual dates for the first of each month (1/1/2016, 2/1/2016, 3/1/2016, etc.), and use a custom date format (“mmm”) to display the month names. This makes it easy to build the criteria we need for AVERAGEIFS. To match dates greater than or equal to the first of the month, we use: And to match dates less than or equal to the last day of the month, we use: EOMONTH automatically returns the last day of the same month because we supply zero for the months argument. Note: concatenation with an ampersand (&) is necessary when building criteria based on a cell reference.

Pivot Table solution

A pivot table is an excellent solution when you need to summarize data by year, month, quarter, and so on, because pivot tables provide controls for automatic grouping by date. For a side-by-side comparison of formulas vs. pivot tables, see this video: Why pivot tables.

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.