cancel
Showing results for
Did you mean:

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Frequent Visitor

Rank

Hi,

I have a table, Table1, and I want to rank multiple meters by End date in the following format.

Can you help?

Meter              End Date     Rank
1000364810   2008 06        1
1000364810   2009 06        2
1000364810   2012 06        3
1000364810   2015 06        4
1000364810   2020 04        5

1 ACCEPTED SOLUTION
Community Champion

Hi @PMF99

=VAR m = Resign_Append[meter]
RETURN
RANKX(
FILTER(Resign_Append,
Resign_Append[meter] = m
),
Resign_Append[CED YYYY MM],,
ASC
)

Regards,
Mariusz

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

7 REPLIES 7
Community Champion

Hi @PMF999,

You can add a column and the code below.

Rank Meter by End Date =
VAR m = Table1[Meter]
RETURN
RANKX(
FILTER(
Table1,
Table1[Meter] = m
),
Table1[End Date],,
ASC
)

Regards,
Mariusz

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Regular Visitor

Many thanks Mariusz;

=VAR m = Resign_Append[Renewal Date]
RETURN
RANKX(
FILTER(Resign_Append,
Resign_Append[CED YYYY MM] = m
),
Resign_Append[CED YYYY MM],,
ASC
)

And here's the error I've got;

DAX comparison operations do not support comparing values of type Text with values of type Date. Consider using the VALUE or FORMAT function to convert one of the values.

What have I done wrong?

Thanks

Peter

Community Champion

Hi @PMF99,

Try,

=VAR m = Resign_Append[Renewal Date]
RETURN
RANKX(
FILTER(Resign_Append,
Resign_Append[Renewal Date] = m
),
Resign_Append[CED YYYY MM],,
ASC
)

Regards,
Mariusz

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Regular Visitor

Hi Mariusz,

Think we're almost there...

Here is my code....

=VAR m = Resign_Append[CED YYYY MM]
RETURN
RANKX(
FILTER(Resign_Append,
Resign_Append[CED YYYY MM] = m
),
Resign_Append[CED YYYY MM],,
ASC
)

And here is the pivot results under Resign Order

Getting only '1s'

Any ideas? I would expect meter 1000364810 to have a resigner order for CED YYYY MM of 1, 2, 3, 4, 5,

Community Champion

Hi @PMF99

=VAR m = Resign_Append[meter]
RETURN
RANKX(
FILTER(Resign_Append,
Resign_Append[meter] = m
),
Resign_Append[CED YYYY MM],,
ASC
)

Regards,
Mariusz

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Regular Visitor

I've ticked the thumbs up box.

Is there another 'Accept' button?

Super User

Hi @PMF999,

If 'End Date' is of type date, you can simply do:

Rank_Column =
RANKX ( CALCULATETABLE(Table1, ALLEXCEPT(Table1, Table1[Meter])), Table1[End Date], Table1[End Date], ASC )

Announcements

Fabric certifications survey

Certification feedback opportunity for the community.

Power BI Monthly Update - April 2024

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

Fabric Community Update - April 2024

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

Top Solution Authors
Top Kudoed Authors