Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

Select multi consecutive rows in Matrix Visual

Hi everyone,

 

Is there a way to select consecutive rows in a Matrix Visual?

I can see by pressing "Ctrl" can multi select anything, but how about a user wants to select the first 100 items? or the items from 3-25? By pressing "Shift" does not work.

 

Thanks.

H

  • Hi, Anonymous 

     

    My previous method is suitable for matrix and measure, but it needs to be set for each visual. You didn't mention multiple viusal before, so I didn't consider it. 

    For the questions you asked later, I have a workaround. 

    Since you have other measures in the filterpane that will affect the filter results, you need to create a table first(from your measure).

     

     

    Table 2 = filter(Summarize(Raw, Raw[Query], "_1", calculate(SUM(Raw[Impressions]),filter(Raw,Raw[Domian] ="domain0")), "_2", calculate(SUM(Raw[Impressions]), filter(Raw,Raw[Domian] ="domain1"))), not(isblank([_1])) && isblank([_2]))

     

     

    Then 

    1. Create a measure for rank.

    Like this:

     

    rank =
    RANKX (
        FILTER ( ALL ( Raw ), [Query] IN DISTINCT ( 'Table 2'[Query] ) ),
        CALCULATE ( MAX ( Raw[Query] ) ),
        ,
        ASC,
        DENSE
    )
    

     

    2. Create a custom slicer based on the value of rank.

     

    3. Create a measure in filter pane to filter data.(each visual)

    Like this:

     

    sort = IF([rank] in DISTINCT(Parameter[Parameter]),1,0)

     

    Finally, you can use slicer to filter data you want.

    Reference: Use what-if parameters to visualize variables - Power BI | Microsoft Docs

    Best Regards

    Janey Guo

     

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

5 Replies

  • v-janeyg-msft's avatar
    v-janeyg-msft
    Community Support

    Hi, Anonymous 

     

    According to your description, I think you can easily create a measure, then use it in filter pane to filter data you want.

    Like this:

    Measure = RANKX(ALL('Table'),[Column3],MAX([Column3]),ASC)

    If it doesn't solve the problem, Please feel free to ask me.

     

    Best Regards

    Janey Guo

     

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

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi v-janeyg-msft , sorry I need to un-mark your reply as solution.

      Reason:

      I just checked the PBI file, your solution is working on a Table, but not matrix visual.

      The expect result is:

      if there is a way I can select consecutive items in a matrix visual.

      As you can see, top 4 items are selected in Matrix Visual 1, so that in Matrix Visual 2 only 4 Query and their Pages are displayed.

       

      Sample PBI file FYI.

      I hope to have your further help.

      Thank you in advance and have a safe day!

      H

       

       

       

      • v-janeyg-msft's avatar
        v-janeyg-msft
        Community Support

        Hi, Anonymous 

         

        My previous method is suitable for matrix and measure, but it needs to be set for each visual. You didn't mention multiple viusal before, so I didn't consider it. 

        For the questions you asked later, I have a workaround. 

        Since you have other measures in the filterpane that will affect the filter results, you need to create a table first(from your measure).

         

         

        Table 2 = filter(Summarize(Raw, Raw[Query], "_1", calculate(SUM(Raw[Impressions]),filter(Raw,Raw[Domian] ="domain0")), "_2", calculate(SUM(Raw[Impressions]), filter(Raw,Raw[Domian] ="domain1"))), not(isblank([_1])) && isblank([_2]))

         

         

        Then 

        1. Create a measure for rank.

        Like this:

         

        rank =
        RANKX (
            FILTER ( ALL ( Raw ), [Query] IN DISTINCT ( 'Table 2'[Query] ) ),
            CALCULATE ( MAX ( Raw[Query] ) ),
            ,
            ASC,
            DENSE
        )
        

         

        2. Create a custom slicer based on the value of rank.

         

        3. Create a measure in filter pane to filter data.(each visual)

        Like this:

         

        sort = IF([rank] in DISTINCT(Parameter[Parameter]),1,0)

         

        Finally, you can use slicer to filter data you want.

        Reference: Use what-if parameters to visualize variables - Power BI | Microsoft Docs

        Best Regards

        Janey Guo

         

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