Forum Discussion

WestWinter's avatar
WestWinter
Helper II
4 years ago
Solved

Changing code to reference a slicer?

Hi All,
 
So I have the below code which gives the value in TableA, where the field is "Asia" and the id matches in Table A with Table B.

 

 

ExposureA =
VAR Output = CALCULATE(SUM(TableA[value]),
FILTER(TableA, TableA[field] = "Asia" && TableA[id] = selectedvalue(TableB[id]))
)

RETURN Output​

 

 

How do I rejigger it so that instead of just "Asia", it is able to accept other fields in TableA[field], via a dropdown box using a Slicer, and then ExposureA to be showing values from that particular field? So this should return in a table, whatever is filtered via the slicer (e.g. North America, if I choose), instead of just a static "Asia"?
 
So for example, in field there are multiple continents:
field
Asia
North America
Europe
Africa
 Thanks
 
  • Hi WestWinter ,

    According to your description, field and value are all in tableA, you want the measure filtered by the field slicer, you don’t need to write TableA[field]=””, just put field in slicer, it automatically works.

    ExposureA =
    CALCULATE (
        SUM ( 'TableA'[Value] ),
        FILTER ( 'TableA', 'TableA'[ID] = MAX ( 'TableB'[ID] ) )
    )
    

    Best Regards,
    Community Support Team _ kalyj

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

2 Replies

  • You should be able to use SELECTEDVALUE just like you do with [id].

     

    ExposureA =
    VAR Output =
        CALCULATE (
            SUM ( TableA[value] ),
            FILTER (
                TableA,
                TableA[field] = SELECTEDVALUE ( SlicerTable[field] )
                    && TableA[id] = SELECTEDVALUE ( TableB[id] )
            )
        )
    RETURN
        Output​
  • Hi WestWinter ,

    According to your description, field and value are all in tableA, you want the measure filtered by the field slicer, you don’t need to write TableA[field]=””, just put field in slicer, it automatically works.

    ExposureA =
    CALCULATE (
        SUM ( 'TableA'[Value] ),
        FILTER ( 'TableA', 'TableA'[ID] = MAX ( 'TableB'[ID] ) )
    )
    

    Best Regards,
    Community Support Team _ kalyj

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