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

Join us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.

Reply
Arnaudd
New Member

Conditional column based on data from different rows and same user

Hello ,

I have the date as in the below power BI table,

Arnaudd_0-1724608878271.png

I want to  modify column [PassY/N] or create a new conditional column, based on the below cretaia:

if there are two rows rows for the User (ex user A) ,and in one row the column pass(Y/N) ,there is Yes, and in the other row there is No, so in the new column the value is Yes.,  so the output appears as below:

 

Arnaudd_1-1724609685244.png

thanks

1 ACCEPTED SOLUTION
LeandroDeodato
Resolver II
Resolver II

You can use the @lbendlin solution, or, if you prefer in dax, can use this mensure.

LeandroDeodato_0-1724615171160.png

 

best regards.

 

 

View solution in original post

5 REPLIES 5
Ashish_Mathur
Super User
Super User

Hi,

PBI file attached.

Hope this helps.

Ashish_Mathur_0-1724640578869.png

 


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
LeandroDeodato
Resolver II
Resolver II

You can use the @lbendlin solution, or, if you prefer in dax, can use this mensure.

LeandroDeodato_0-1724615171160.png

 

best regards.

 

 

Thanks @lbendlin 

 

Thanks @LeandroDeodato , the DAX might be easier to implement, I tested it and it works!

but, if I have anather coloumn (ex: number of test 2), and want to do the same aggregation as the one I have done to  : "number of test" , what is the correct DAX fonction to use ?

I added an extra line (Pass2) of the other coloumn but I am getting error : The syntax for '"Pass 2"' is incorrect. 

 

New_Table = SUMMARIZE('exam (Questions)',
'exam (Questions)'[username],
"Number of Tests", COUNT('exam (Questions)'[ID]),
"Pass", if(CONTAINS('exam (Questions)','exam (Questions)'[Pass(Y/N)],"Yes"),"Yes","No")
"Pass2", if(CONTAINS('exam (Questions)','exam (Questions)'[Pass(Y/N)2],"Yes"),"Yes","No")

)

 

Thanks

 

 

There's only 1 comma missing between "Pass" and "Pass2" lines, which causes a syntax issue.

 

It should be like this:

New_Table = SUMMARIZE('exam (Questions)',
'exam (Questions)'[username],
"Number of Tests", COUNT('exam (Questions)'[ID]),
"Pass", if(CONTAINS('exam (Questions)','exam (Questions)'[Pass(Y/N)],"Yes"),"Yes","No"),
"Pass2", if(CONTAINS('exam (Questions)','exam (Questions)'[Pass(Y/N)2],"Yes"),"Yes","No")
)

 

Best Regards,
Muhammad Yousaf

 

LinkedIn

lbendlin
Super User
Super User

Group your data by user.  Add one aggregation for "Count of rows"  and another aggregation for "Maximum of [pass(Y/N)]"

 

lbendlin_0-1724613618180.png

 

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTIEYr98pVidaCUnVK4zlBuZWgzmO6LxQcqNkPguSNpjAQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [user = _t, #"number of test" = _t, #"pass(Y/N)" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"number of test", Int64.Type}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"user"}, {{"Total number of test", each Table.RowCount(_), Int64.Type}, {"pass(Y/N)", each List.Max([#"pass(Y/N)"]), type nullable text}})
in
    #"Grouped Rows"

How to use this code: Create a new Blank Query. Click on "Advanced Editor". Replace the code in the window with the code provided here. Click "Done". Once you examined the code, replace the Source step with your own source.

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

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