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

Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM. Register now.

Reply
Anonymous
Not applicable

Take a column data by it's name to calculate

Hello! I need to use measure that returns the column name from one take using selectedvalue, and use this columnname to get the column. Example:
Here is my first table: 

idattribute
1Purchase
1Emotion
1Likability
2Purchase
2Likability
2Emotion

I will use attribute column as a filter, those 3 attributes are the column names of my second table:

idPurchaseLikabilityEmotion  
10.3420.8350.756  
20.4320.6570.235  
30.7540.6540.765  

I need to create a formula, to calculated the average of one specific column based on attribute column from the first table:
so I now use:
var filter_attribute = selectedvalue('1 table'[attribute])
var mean = calculate(average(  '2 table'[*filter_attribute*] ))
What do I need to put filter_attribute(column name) to DAX will consider it as the column named like this? Thanks in advance!

1 ACCEPTED SOLUTION
Greg_Deckler
Community Champion
Community Champion

@Anonymous I would highly recommend that you unpivot those three columns in your 2nd table and then this problem becomes trivial. Alternatively you would have to do this:

var filter_attribute = selectedvalue('1 table'[attribute])

var mean = 
  SWITCH(__filter_attribute,
    "Purchase",calculate(average(  '2 table'[Purchase] )),
    "Likeability",calculate(average(  '2 table'[Likeability] )),
    "Emotion",calculate(average(  '2 table'[Emotion] )),
  )


Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

1 REPLY 1
Greg_Deckler
Community Champion
Community Champion

@Anonymous I would highly recommend that you unpivot those three columns in your 2nd table and then this problem becomes trivial. Alternatively you would have to do this:

var filter_attribute = selectedvalue('1 table'[attribute])

var mean = 
  SWITCH(__filter_attribute,
    "Purchase",calculate(average(  '2 table'[Purchase] )),
    "Likeability",calculate(average(  '2 table'[Likeability] )),
    "Emotion",calculate(average(  '2 table'[Emotion] )),
  )


Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.