Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
OSLacour
Regular Visitor

Calculate total last year in all rows in 1 column

Hello. I want to calculate for example the total amount of the sales from previous year and show this amount in the column 'total sales 2018'. 

How can I do this? Thanks for a response. 

 

YearTotal salesTotal sales 2018
20171000012500
20181250012500
20191400012500
1 ACCEPTED SOLUTION
guiborlenghi
Regular Visitor

Hello!

 

To calculate the total from distinct periods, we need to use the functions of "time intelligence". For that, we need a "Calendar Table". So, here's what we gotta do:

 

1- Create a new column in the date format based on your Year;

 

NewDate = DATE([Year];1;1)
// This will generate a column with the dates "01/01/2017", "01/01/2018", "01/01/2019"

 

 

2- Create a Calendar Table

Using the button "New Table", insert the DAX below:

 

Calendar = 
// Will generate a table called "Calendar", starting on "01/01/2017" and finishing at "01/01/2019"
CALENDAR(
MIN(Sales[NewDate]);
MAX(Sales[NewDate])
)

 

 

3- Create a relationship between the "Sales" and "Calendar" tables using the columns Sales[NewDate] (many side) and Calendar[Date] (one side). In this case, the relationship will be "one to one", assuming that we have only one row for each Year in the Sales table.

 

4- Create the new metric for the total sales amount from previous year:

 

Total Sales Previous Year = 
CALCULATE(
    [Total Sales];
    PREVIOUSYEAR('Calendar'[Date])
)

 

 

5- Enjoy

Result Using the "Total Sales Previous Year"Result Using the "Total Sales Previous Year"

If that solved your issues, remember to mark this as the correct awnser.

And if that's not what you were looking for, let me know and I will do the best to help you again.

 

View solution in original post

2 REPLIES 2
guiborlenghi
Regular Visitor

Hello!

 

To calculate the total from distinct periods, we need to use the functions of "time intelligence". For that, we need a "Calendar Table". So, here's what we gotta do:

 

1- Create a new column in the date format based on your Year;

 

NewDate = DATE([Year];1;1)
// This will generate a column with the dates "01/01/2017", "01/01/2018", "01/01/2019"

 

 

2- Create a Calendar Table

Using the button "New Table", insert the DAX below:

 

Calendar = 
// Will generate a table called "Calendar", starting on "01/01/2017" and finishing at "01/01/2019"
CALENDAR(
MIN(Sales[NewDate]);
MAX(Sales[NewDate])
)

 

 

3- Create a relationship between the "Sales" and "Calendar" tables using the columns Sales[NewDate] (many side) and Calendar[Date] (one side). In this case, the relationship will be "one to one", assuming that we have only one row for each Year in the Sales table.

 

4- Create the new metric for the total sales amount from previous year:

 

Total Sales Previous Year = 
CALCULATE(
    [Total Sales];
    PREVIOUSYEAR('Calendar'[Date])
)

 

 

5- Enjoy

Result Using the "Total Sales Previous Year"Result Using the "Total Sales Previous Year"

If that solved your issues, remember to mark this as the correct awnser.

And if that's not what you were looking for, let me know and I will do the best to help you again.

 

Thank you very much. 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors