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
AngelikaMcGill
New Member

Combining data from various columns into one column based on value in another column

Hopefully this isn't as complicated as it seems...

 

I am extracting data from Dynamics and in the extraction I have values that are coming into power bi in various columns instead of one based on the type of value (text, short text, integer, boolean, table, etc).  How would I create a DAX formula that looks at the type of the value "First Type" and returns the value in the column that it corresponds to.  So a value in "Text" in the First Type column would return the value from the "First AnswerText" column.  The report is really messy with 7 value columns instead of one.  Any help would be much appreciated.

powerbi questions.jpg

1 ACCEPTED SOLUTION
v-haibl-msft
Microsoft Employee
Microsoft Employee

@AngelikaMcGill

 

Does above solution help?

 

Best Regards,
Herbert

View solution in original post

5 REPLIES 5
v-haibl-msft
Microsoft Employee
Microsoft Employee

@AngelikaMcGill

 

Does above solution help?

 

Best Regards,
Herbert

I haven't had a chance to test it yet but it looks like it should work.  Thank you!

v-haibl-msft
Microsoft Employee
Microsoft Employee

@AngelikaMcGill

 

You can unpivot part of the columns as below in Query Editor.

 

Combining data from various columns into one column based on value in another column_1.jpg

 

Then create relationship between two tables using the First Type column.

 

Combining data from various columns into one column based on value in another column_2.jpg

 

I create a Tag column to indentify the answer using following DAX formula.

 

Tag = 
IF (
    Table1[First Type] = "ShortText",
    SEARCH ( "Text", Table1[Attribute],, -1 ),
    IF (
        Table1[First Type] = "Table",
        SEARCH ( "First GroupAnswer2", Table1[Attribute],, -1 ),
        IF (
            Table1[First Type] = "MultipleRadio"
                || Table1[First Type] = "MultipleCheckbox",
            SEARCH ( "First Checkbox", Table1[Attribute],, -1 ),
            SEARCH ( Table1[First Type], Table1[Attribute],, -1 )
        )
    )
)

Combining data from various columns into one column based on value in another column_3.jpg

 

At last, we only need to use the Tag column to get the desired answer.

 

Answer = 
CALCULATE ( MAX ( Table1[Value] ), Table1[Tag] > 0 )

Combining data from various columns into one column based on value in another column_4.jpg

 

Best Regards,
Herbert

 

Greg_Deckler
Super User
Super User

Can you post some sample data and example of the desired output that you want? Having trouble figuring out what you are trying to do here. You may have to pivot/unpivot those columns.



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!:
Power BI Cookbook Third Edition (Color)

DAX is easy, CALCULATE makes DAX hard...

I'm just looking to line up the multiple columns into one as shown below:

 

powerbi questions sample.jpg

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.