<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Selecting dynamic colums based on slicer selection in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2533763#M71134</link>
    <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I’m looking for helping to write a DAX measure that selects dynamic columns based on slicer selection.&lt;/P&gt;&lt;P&gt;I have a large dataset on power query that has hundreds of columns. I’m creating a dashboard where one of the slicers will be ‘dates’ allowing user to enter a ‘from’ (start date) and ‘to’ (end date).&lt;/P&gt;&lt;P&gt;Once user enters the dates, the DAX measure should do the following:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Filter the main data set and produce a subset data table based on the user’s selection. &amp;nbsp;&lt;/LI&gt;&lt;LI&gt;Add a new column that calculates percentage return between these two dates. The percentage return will be ‘Return = Divide ((end date, start date – 1*100)’. &amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;For visualisation, this is how the main data looks like:&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Portfolio&lt;/TD&gt;&lt;TD&gt;31/07/2020&lt;/TD&gt;&lt;TD&gt;01/08/2020&lt;/TD&gt;&lt;TD&gt;02/08/2020&lt;/TD&gt;&lt;TD&gt;03/08/2020&lt;/TD&gt;&lt;TD&gt;04/08/2020&lt;/TD&gt;&lt;TD&gt;05/08/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;100.5&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;101.5&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;102.5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;103.0&lt;/TD&gt;&lt;TD&gt;104.0&lt;/TD&gt;&lt;TD&gt;105.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;105.0&lt;/TD&gt;&lt;TD&gt;110.0&lt;/TD&gt;&lt;TD&gt;115.0&lt;/TD&gt;&lt;TD&gt;120.0&lt;/TD&gt;&lt;TD&gt;125.0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;If a user selects start date as 02/08/2020 and end date as 04/08/2020, the expected results is as tabled below. The first column (‘Portfolio’) will be static whilst the columns with header dates will be dynamic based on user selections.&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Portfolio&lt;/TD&gt;&lt;TD&gt;02/08/2020&lt;/TD&gt;&lt;TD&gt;04/08/2020&lt;/TD&gt;&lt;TD&gt;Return&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;1.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;104.0&lt;/TD&gt;&lt;TD&gt;2.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3&lt;/TD&gt;&lt;TD&gt;110.0&lt;/TD&gt;&lt;TD&gt;120.0&lt;/TD&gt;&lt;TD&gt;9.0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;I would really appreciate your help in writing a measure that can do the above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 23 May 2022 15:07:35 GMT</pubDate>
    <dc:creator>Bobstar86</dc:creator>
    <dc:date>2022-05-23T15:07:35Z</dc:date>
    <item>
      <title>Selecting dynamic colums based on slicer selection</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2533763#M71134</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I’m looking for helping to write a DAX measure that selects dynamic columns based on slicer selection.&lt;/P&gt;&lt;P&gt;I have a large dataset on power query that has hundreds of columns. I’m creating a dashboard where one of the slicers will be ‘dates’ allowing user to enter a ‘from’ (start date) and ‘to’ (end date).&lt;/P&gt;&lt;P&gt;Once user enters the dates, the DAX measure should do the following:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Filter the main data set and produce a subset data table based on the user’s selection. &amp;nbsp;&lt;/LI&gt;&lt;LI&gt;Add a new column that calculates percentage return between these two dates. The percentage return will be ‘Return = Divide ((end date, start date – 1*100)’. &amp;nbsp;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;For visualisation, this is how the main data looks like:&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Portfolio&lt;/TD&gt;&lt;TD&gt;31/07/2020&lt;/TD&gt;&lt;TD&gt;01/08/2020&lt;/TD&gt;&lt;TD&gt;02/08/2020&lt;/TD&gt;&lt;TD&gt;03/08/2020&lt;/TD&gt;&lt;TD&gt;04/08/2020&lt;/TD&gt;&lt;TD&gt;05/08/2020&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;100.5&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;101.5&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;102.5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;103.0&lt;/TD&gt;&lt;TD&gt;104.0&lt;/TD&gt;&lt;TD&gt;105.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3&lt;/TD&gt;&lt;TD&gt;100.0&lt;/TD&gt;&lt;TD&gt;105.0&lt;/TD&gt;&lt;TD&gt;110.0&lt;/TD&gt;&lt;TD&gt;115.0&lt;/TD&gt;&lt;TD&gt;120.0&lt;/TD&gt;&lt;TD&gt;125.0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;If a user selects start date as 02/08/2020 and end date as 04/08/2020, the expected results is as tabled below. The first column (‘Portfolio’) will be static whilst the columns with header dates will be dynamic based on user selections.&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Portfolio&lt;/TD&gt;&lt;TD&gt;02/08/2020&lt;/TD&gt;&lt;TD&gt;04/08/2020&lt;/TD&gt;&lt;TD&gt;Return&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;101.0&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;1.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;102.0&lt;/TD&gt;&lt;TD&gt;104.0&lt;/TD&gt;&lt;TD&gt;2.0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;P3&lt;/TD&gt;&lt;TD&gt;110.0&lt;/TD&gt;&lt;TD&gt;120.0&lt;/TD&gt;&lt;TD&gt;9.0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;I would really appreciate your help in writing a measure that can do the above.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 23 May 2022 15:07:35 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2533763#M71134</guid>
      <dc:creator>Bobstar86</dc:creator>
      <dc:date>2022-05-23T15:07:35Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting dynamic colums based on slicer selection</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2540341#M71535</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="393021" data-lia-user-login="Bobstar86" class="lia-mention lia-mention-user"&gt;Bobstar86&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I suggest you unpivot your table by select all other columns except [Portfolio] column.&lt;/P&gt;
&lt;P&gt;New table should look like as below.&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;Measure:&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;Measure = 
VAR _StartDate = SELECTEDVALUE('Start Date'[Start Date])
VAR _EndDate = SELECTEDVALUE('End Date'[End Date])
VAR _Value = CALCULATE(SUM('Table'[Value]),FILTER('Table','Table'[Date] = _StartDate ||'Table'[Date] = _EndDate))
VAR _StartValue = CALCULATE(SUM('Table'[Value]),FILTER('Table','Table'[Date] = _StartDate))
VAR _EndValue = CALCULATE(SUM('Table'[Value]),FILTER('Table','Table'[Date] = _EndDate))
RETURN
IF(ISFILTERED('Start Date'[Start Date])||ISFILTERED('End Date'[End Date]),IF(HASONEVALUE('Table'[Date]),_Value,_EndValue - _StartValue),IF(HASONEVALUE('Table'[Date]),SUM('Table'[Value])))&lt;/LI-CODE&gt;
&lt;P&gt;Create a matrix visual and rename column subtotal as Return. Create two unrelated date tables to create start date slicer and end date slicer.&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;Result is as below.&lt;/P&gt;
&lt;P&gt;By Default:&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;Startdate =2020/08/02,&amp;nbsp;Enddate =2020/08/04&lt;/P&gt;
&lt;P&gt;&lt;img /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best Regards,&lt;BR /&gt;Rico Zhou&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 26 May 2022 02:56:20 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2540341#M71535</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-05-26T02:56:20Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting dynamic colums based on slicer selection</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2542629#M71669</link>
      <description>&lt;P&gt;Hi Anonymous&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is very helpful and is exactly what I was after. Thanks very much.&lt;/P&gt;&lt;P&gt;If you don't mind, I have a few follow up questions that I would appreciate your help with:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Do I therefore need to set the data source as an unpivoted table?&lt;/LI&gt;&lt;LI&gt;Is there a way of preventing user from selecting multiple dates?&lt;/LI&gt;&lt;LI&gt;Is there a way to set the date slicers such that a user cannot input a ‘To’ date earlier than 'From' date?&lt;/LI&gt;&lt;LI&gt;My dataset has hundrends of date columns (in pivoted format). Setting the date slicer as drop down means there will be alot of scrolling up and down to select a date. Setting the slicer as between dates (similar to below) with a calendar is much more efficient. Is there a way of doing this instead of the drop down.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;Once again thank you so much&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Bobstar86&lt;/P&gt;</description>
      <pubDate>Fri, 27 May 2022 02:42:10 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Selecting-dynamic-colums-based-on-slicer-selection/m-p/2542629#M71669</guid>
      <dc:creator>Bobstar86</dc:creator>
      <dc:date>2022-05-27T02:42:10Z</dc:date>
    </item>
  </channel>
</rss>

