Pagina 1 di 2

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 8:16
da mariri
Buongiorno.

Ho creato una pivot dei top3 prodotti per anno.

Vorrei inserire a fianco tre colonne, che mi mostrino qual è il nome dei prodotti top.
Per il primo prodotto ho utilizzato la funzione top (1) e non ci sono problemi.
Per le altre due immagino si debba utilizzare il rank, e filtrare il prodotto 2 e 3.

Per favore potete aiutarmi?

Grazie.

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 11:36
da Andrea90
mariri,

Aggiungi queste due colonne calcolate nel tuo modello dati (occhio a dare i nomi come quelli che ho assegnato io, o al limite modificarli in modo corretto):

[Value_By_Year]

Codice: Seleziona tutto

=
VAR CurYear =
    YEAR ( Tabella1[Data] )
VAR CurCol = Tabella1[Color]
VAR Value_by_Year =
    CALCULATE (
        [Tot_Value],
        YEAR ( Tabella1[Data] ) = CurYear,
        ALL ( Tabella1 ),
        Tabella1[Color] = CurCol
    )
RETURN
    Value_by_Year

[Rank_By_Year]

Codice: Seleziona tutto

=
VAR CurYear =
    YEAR ( Tabella1[Data] )
VAR Result =
    RANKX (
        FILTER ( Tabella1, YEAR ( Tabella1[Data] ) = CurYear ),
        Tabella1[Value_By_Year],
        ,
        ,
        DENSE
    )
RETURN
    Result
La seconda colonna calcolata la usi dentro il tuo report della Pivot, nel campo delle righe, e poi filtri solo i valori 1, 2 e 3. Otterrai un risultato simile a questo:

Immagine

Andrea

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 13:26
da mariri
Grazie Andrea90 per il tempo che mi hai dedicato.

Forse non sono stato sufficientemente chiaro, scusa. La mia necessità è avere tre colonne affiancate in questo modo


Immagine


Grazie.

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 13:37
da Andrea90
mariri,

Usa IF() assieme ad HASONEVALUE() per ottenere il colore in corrispondenza dei vari valori di Rank, metti il rank sulle colonne invece che sulle righe e poi tieni come prima solo i primi 3.

Codice: Seleziona tutto

=IF( HASONEVALUE( Tabella1[Color] ), VALUES( Tabella1[Color] ) )
Andrea

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 16:51
da mariri
Scusa Andrea90 mi sono perso :crazy: .

La IF() HASONEVALUE() va inserito nella colonna calcolata Value_By_Year?

Grazie.

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 16:58
da Andrea90
mariri,

No il codice che ti ho dato va inserito in una misura a parte ed usata quella dentro l’area valori della pivot.

Andrea

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 17:26
da mariri
Grazie Andrea90 tutto ok, funziona perfettamente.

Se ne hai voglia, visto che ti ho già chiesto troppo, potresti indicarmi a scopo didattico come creare una misura senza inserire la due colonne calcolate?

Grazie mille.

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 19:07
da mariri
Ciao Andrea90

Con il metodo che mi hai suggerito, si perde purtroppo la misura top3 che viene scissa nei tre elementi.

Immagine

Grazie per la pazienza.

Rank secondo e terzo prodotto

Inviato: sab 3 dic 2022, 19:23
da Andrea90
mariri,

Nascondi le tre colonne del valore e lascia solo quella del totale in fondo sulla destra.

Andrea

Rank secondo e terzo prodotto

Inviato: dom 4 dic 2022, 7:56
da mariri
Grazie Andrea90 ho fatto come mi ha indicato.

Rimaneva il problema delle intestazioni di colonne identiche per i tre prodotti.

Immagine

Ho risolto nascondendo le prime due righe della pivot e ho aggiunto le descrizioni che mi interessavano.

Immagine

Adesso mi studio come arrivare al risultato utilizzando soltanto misure anziché colonne calcolate, eventualmente - se non è un problema - torno a disturbarvi.

Grazie ancora.