Forum Discussion

Sil_2022's avatar
Sil_2022
New Member
3 years ago
Solved

Using a slicer category to filter a column with text separated values

Hi everyone,

 

I have a category list (let's call it fruit). I have a table with the column fruit, but the column has multiple categories separated by commas. I would like to use the slicer feature where I can select one category, and the table will filter by the specific category regardless if the row has multiple categories. See example below:

 

Fruit category table

1. Apple 

2. Orange

3. Pineapple

4. Grape

 

The report table has a column that has multiple fruit categories

1. Apple

2. Apple, Orange

3. Grape, Pineapple, Orange

4. Grape, Orange

5. Apple, Grape

 

If I select Apple in the slicer, I would like the table to filter as follows:

1. Apple

2. Apple, Grape

3, Apple, Orange.

 

In other words, look for the selected category in the slicer and filter the table based on the selected slicer value. 

 

Any help is much appreciated! Thank you much. 

2. Apple, Orange

  • Anonymous's avatar
    Anonymous
    3 years ago

    HI Sil_2022,

    I'd like to suggest you extract and expand these values to single fruit, then you can use it as source of slicer.

    New Table =
    VAR _path =
        SUBSTITUTE (
            CONCATENATEX ( VALUES ( 'Table'[Column] ), [Column], "," ),
            ",",
            "|"
        )
    VAR _length =
        PATHLENGTH ( _path )
    VAR _pathtable =
        ADDCOLUMNS (
            GENERATESERIES ( 1, _length, 1 ),
            "Column", PATHITEM ( _path, [Value] )
        )
    RETURN
        pathtable

    After these steps, you can write a measure formula(get the current selection and use search function to filter table records) to use on visual level filter to filter table records.

    Regards,
    Xiaoxin Sheng

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    HI Sil_2022,

    I'd like to suggest you extract and expand these values to single fruit, then you can use it as source of slicer.

    New Table =
    VAR _path =
        SUBSTITUTE (
            CONCATENATEX ( VALUES ( 'Table'[Column] ), [Column], "," ),
            ",",
            "|"
        )
    VAR _length =
        PATHLENGTH ( _path )
    VAR _pathtable =
        ADDCOLUMNS (
            GENERATESERIES ( 1, _length, 1 ),
            "Column", PATHITEM ( _path, [Value] )
        )
    RETURN
        pathtable

    After these steps, you can write a measure formula(get the current selection and use search function to filter table records) to use on visual level filter to filter table records.

    Regards,
    Xiaoxin Sheng