Showing results for 
Search instead for 
Did you mean: 
Not applicable

Quarter + Year Text field to date field AND QoQ/YoY calculation



I am trying to find a solution to my problem. I will try to explain it as detailed as possible.


1. I have tried to link my uploaded Excel file to a date table. The Excel file contains the following "time dimension", but it is recognized in powerbi as text format:

!NB note that there is more than one operator, meaning the quarters are repeated through the table.



This is linked to a datetable with a cardinality relationship many-to-many through a custom Quarter+Year colum in the datetable:


My first question is: Is this a correct of linking the two table, and if not what is best practice to do this?


Second (which might be a consequence of not using best practice in first topic) is: when I try to calculate QoQ or YoY I am running into problems.


I am trying to use a DATEADD function as this seems to be recommended several times on this community.

when calculating Last quarter im using this dax formula:

LastQ = CALCULATE([Value],DATEADD('Date'[Date],-1,QUARTER) )

 and last year:

LY = CALCULATE(sum('2 2 1 Pivot Data (2)'[Værdi]), DATEADD('Date'[Date],-4, QUARTER))

when putting the measures into a table with my original values I dont get any values in my table only when it sums up, meaning I can not make a measure calculating the difference between the quarters, I have tried it and it did not work. I am stuck and would very much appreciate if anyone have had the same issues and can help!

Super User
Super User

@Anonymous , Join is not correct. If you do not have date create one with help from Qtr year


Check my video for DAX option -


Or Create a qtr Year table with YYYYQ as key on month side and use that for time intelligence


new column in Qtr year table


Qtr Rank = RANKX(all('Date'),'Date'[Qtr Name],,ASC,Dense) //YYYYQ


refer: Power BI — Qtr on Qtr with or Without Time Intelligence
This Qtr = CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Qtr Rank]=max('Date'[Qtr Rank])))
Last Qtr = CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Qtr Rank]=max('Date'[Qtr Rank])-1))


This Year = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])))
Last Year = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])-1))



Power BI — Year on Year with or Without Time Intelligence

Not applicable

Thank you for your almost Immediate response! I will look into this and give it a try. Truth is, I am very new to powerbi, so many things which are very basic for others are hard for me.

Will return when I have tried your solution!


Good day

Helpful resources

PBI Sept Update Carousel

Power BI September 2023 Update

Take a look at the September 2023 Power BI update to learn more.

Learn Live

Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

Dashboard in a day with date

Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

MPPC 2023 PBI Carousel

Power Platform Conference-Power BI and Fabric Sessions

Join us Oct 1 - 6 in Las Vegas for the Microsoft Power Platform Conference.

Top Solution Authors
Top Kudoed Authors