Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

alternative to lookupvalue function

Hi everyone,   I'm trying to look up values using this sample formula in a measure : Max Category = LOOKUPVALUE (Table1[Col_to_lookup], Table1[col_num], Table1[Max(Table1[col_num])])   Then, I w...
  • PaulDBrown's avatar
    PaulDBrown
    4 years ago

    My apologies. I should have looked at the structure of the map. You need to change the model slightly and consequently the measure:

     

     

    Couleur Max Region New =
    VAR _MXVoix =
        CALCULATE ( MAX ( 'RegNuance'[Voix] ), ALLEXCEPT ( RegNuance, Reg[Région] ) )
    VAR _Colour =
        CALCULATE (
            MAX ( RegNuance[Couleur Nuance] ),
            FILTER ( ALLEXCEPT ( RegNuance, Reg[Région] ), RegNuance[Voix] = _MXVoix )
        )
    RETURN
        _Colour
    

     

     

  • PaulDBrown's avatar
    PaulDBrown
    4 years ago

    Sure. You need a couple of measures:

     

    Sum Voix = 
    SUM(RegNuance[Voix])
    Max Voix by region = 
    CALCULATE(MAX('RegNuance'[Voix]), ALLEXCEPT(RegNuance, Reg[Région]))
    Filter Map by Winning Code Nuance =
    VAR _ValVoix =
        SUMMARIZE ( RegNuance, Reg[Région], Nuance[Code Nuance], "@SUM", [Sum Voix] )
    VAR _MAXVoix =
        ADDCOLUMNS (
            SUMMARIZE ( RegNuance, Reg[Région], Nuance[Code Nuance] ),
            "@SUM", [Max Voix by region]
        )
    VAR _filter =
        CALCULATETABLE (
            VALUES ( Nuance[Code Nuance] ),
            INTERSECT ( _ValVoix, _MAXVoix )
        )
    RETURN
        COUNTROWS ( _filter )
    

     

    Add this last measure [Filter Map by Winning Code Nuance] to the map's filter in the filter pane and set the value to greater or equal to 1

    To get:

     

     

     

     

    and a bonus measure to return the winning Nuance Code by region for the maps tooltip:

     

    Code Nuance with max votes by region =
    VAR _ValVoix =
        SUMMARIZE ( RegNuance, Reg[Région], Nuance[Code Nuance], "@SUM", [Sum Voix] )
    VAR _MAXVoix =
        ADDCOLUMNS (
            SUMMARIZE ( RegNuance, Reg[Région], Nuance[Code Nuance] ),
            "@SUM", [Max Voix by region]
        )
    VAR _filter =
        CALCULATETABLE (
            VALUES ( Nuance[Code Nuance] ),
            INTERSECT ( _ValVoix, _MAXVoix )
        )
    RETURN
        CONCATENATEX ( _filter, 'Nuance'[Code Nuance], ", " )
    

     

     

    Hope this helps!