Date-based groupings using a calculated column

At some point you'll want to display a chart with data grouped by day, month, quarter or year. For example, here's the number of invoices grouped by Month:

Data grouped by month.

The short version of this is: create a calculated field which calculates the label (the year and month, in the example above).

Then in your web part configuration, choose your calculated column as the "grouping" field:

And for the sort order, choose to sort by categories:

Note that the categories - in this case, a calculated date label - are automatically recognised as dates, and will be sorted chronologically and not alphabetically.

If you'd like to group your data by Financial Quarter, you'll need two things:

  • a Date field which is already populated with the correct date for each row

  • a Calculated field which calculates the Quarter (or maybe month, year, etc).

The formula for to produce a Quarter calculated field, where Q1 is January-March, is as follows:

=YEAR(Created)&" Q"&CHOOSE(MONTH(Created),1,1,1,2,2,2,3,3,3,4,4,4)

The formula uses Created as the date field - change this if you have another date field.

It's easy to customise - e.g. if your Q1 starts in April, try this instead;

=YEAR(Created)&" Q"&CHOOSE(MONTH(Created),4,4,4,1,1,1,2,2,2,3,3,3)

Simply create a calculated field and paste the formula in:

The output in your SharePoint list will be something like this:

The reason the Year component is first is so that the field is easily sortable. You can then use this to display a Quarterly sales chart, for example.