cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

## Sameperiodlastyear, but only until the same date as this year

So earlier I posted a question because I can't get the KPI visual to work correctly and I still can't

https://community.powerbi.com/t5/Desktop/Can-t-get-the-KPI-visual-to-work-correctly/m-p/2184879

I've tried more than 30 calculations so far and I'm getting very close, but not quite there yet.

So first I'll expain what I want.

I want the KPI visual to display the total revenue of the current year (indicator)

RevenueYTD = TOTALYTD([Revenue],'Calendar'[Date],'Calendar'[Year]=YEAR(TODAY()))

And compare it to the total revenue of the previous year, but only for the exact same period of last year (goal / target). So for today that would mean only calculate the revenue of 01-01-2020 until 19-11-2020.

RevenueLYTD = TOTALYTD([Revenue],SAMEPERIODLASTYEAR('Calendar'[Date]),'Calendar'[Year]=YEAR(TODAY())-1)
The above function doesn't give me the result I want, because it sums the entire year 2020. I only want the same period of last year.

1 ACCEPTED SOLUTION

After a little bit of puzzling I managed to make it work, thanks for the inspiration amitchandak

RevenueLYTD =

var _min = date(year(today())-1,1,1)

var _max = date(year(today())-1,month(today()),day(today()))

return TOTALYTD([Revenue],SAMEPERIODLASTYEAR('Calendar'[Date]),'Calendar'[Date] >= _min && 'Calendar'[Date] <= _max)

3 REPLIES 3

After a little bit of puzzling I managed to make it work, thanks for the inspiration amitchandak

RevenueLYTD =

var _min = date(year(today())-1,1,1)

var _max = date(year(today())-1,month(today()),day(today()))

return TOTALYTD([Revenue],SAMEPERIODLASTYEAR('Calendar'[Date]),'Calendar'[Date] >= _min && 'Calendar'[Date] <= _max)

Super User

@DaniMak1608 , YTD and LYTD based on today, no filter selected

YTD Today=
var _min = date(year(today()),1,1)
var _day = today()
return
CALCULATE(sum('Table'[Qty]), FILTER(ALL('Date'),'Date'[Date] >=_min && 'Date'[Date] <= _day) )

LYTD =
var _min = date(year(today())-1,1,1)
var _max = date(year(today())-1,month(today()),day(today()))
var _day = datediff(_min, _max,day)+1
return
CALCULATE(sum('Table'[Qty]), FILTER(ALL('Date'),'Date'[Year] = year(Today())-1 && 'Date'[Day of Year] <= _max))

////////////with Date elements in group by , like daily YTD
YTD Today=
var _min = date(year(today()),1,1)
var _day = today()
return
CALCULATE(sum('Table'[Qty]), FILTER(ALL('Date'),'Date'[Date] >=_min && 'Date'[Date] <= _day && 'Date'[Date] <=Max('Date'[Date] ) ) )

LYTD =
var _min = date(year(today())-1,1,1)
var _max = date(year(today())-1,month(today()),day(today()))
var _day = datediff(_min, _max,day)+1
return
CALCULATE(sum('Table'[Qty]), FILTER(ALL('Date'),'Date'[Year] = year(Today())-1 && 'Date'[Day of Year] <= _max && 'Date'[Date] <= date(year(Max('Date'[Date] ))-1,month(Max('Date'[Date] )),day(Max('Date'[Date] )))))

I don't have a [Day of Year] in my calender table yet. Can you help me with that?

Announcements

#### Power BI Monthly Update - July 2024

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

#### Fabric Community Update - July 2024

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

Top Solution Authors
Top Kudoed Authors