Ir para conteúdo
  • 0

Pintar celulas especificas, Calendario Matriz


Ir para solução Solucionado por Alison Pezzott ,

Pergunta

  • Alunos
Postado

Eu tenho uma matriz com um calendario, preciso pintar os dias conforme a media do mesmo periodo.
Ex:
Pintar de verde os domingos que foram maior que a média do domingo e de vermelho o que for menor, e assim sucessivamente com os demais dias da semana do mês, conforme abaixo:

image.png.32444bd83af2c18ba4e59f1d4b35604c.png

Formula do calendario:

_Calendario =
 
VAR vDia =
 
SELECTEDVALUE(dCalendario[Dia])
 
 
 
VAR vIndicador =
 
SELECTEDVALUE(Indicadores[Indicadores])
 
 
 
VAR vTotal =    
 
    SWITCH(
        TRUE(),
        vIndicador = "TPV", [VLR_TPV],
        vIndicador = "MO", [VLR_MARGEM_OPERACIONAL],
        vIndicador = "PDD", [VLR_PDD],
        vIndicador = "RB", [VLR_RECEITA_BRUTA_FINAL],
        vIndicador = "MC", [VLR_MARGEM_CONTRIBUICAO],
        [VLR_CUSTO_FINANCEIRO]
    )
 
VAR vTotal_Formatado =
 
    SWITCH(
        TRUE(),
        vTotal >= 1000000000, Format(vTotal, "#,0,,,.00 bi"),
        vTotal >= 1000000, Format(vTotal, "#,0,,.00 mi"),
        vTotal >= 1000, Format(vTotal, "#,0,.00 mil"),
        Format(vTotal, "#")
    )
 
Return
 
IF(
    NOT(ISBLANK(vDia)),
    vDia &
    UNICHAR(10)&
    vTotal_Formatado
)

Formula da Média:

_Média =
 
VAR vIndicador =
 
SELECTEDVALUE(Indicadores[Indicadores])
 
VAR vTotal =    
    SWITCH(
        TRUE(),
        vIndicador = "TPV", AVERAGEX(VALUES(dCalendario[Data]),[VLR_TPV]),
        vIndicador = "MO", AVERAGEX(VALUES(dCalendario[Data]),[VLR_MARGEM_OPERACIONAL]),
        vIndicador = "PDD", AVERAGEX(VALUES(dCalendario[Data]),[VLR_PDD]),
        vIndicador = "RB", AVERAGEX(VALUES(dCalendario[Data]),[VLR_RECEITA_BRUTA_FINAL]),
        vIndicador = "MC", AVERAGEX(VALUES(dCalendario[Data]),[VLR_MARGEM_CONTRIBUICAO]),
        AVERAGEX(VALUES(dCalendario[Data]),[VLR_CUSTO_FINANCEIRO])
    )
 
VAR vTotal_Formatado =
    SWITCH(
        TRUE(),
        vTotal >= 1000000000, Format(vTotal, "#,0,,,.00 bi"),
        vTotal >= 1000000, Format(vTotal, "#,0,,.00 mi"),
        vTotal >= 1000, Format(vTotal, "#,0,.00 mil"),
        Format(vTotal, "#")
    )
 
Return
vTotal_Formatado

Cheguei inclusive a tentar fazendo a média por dia da semana separado:

_MediaDomingo =
CALCULATE(
    TabelaMedidas[_Média],
    dCalendario[Nome do Dia Abrev] = "dom")

2 respostass a esta questão

Posts Recomendados

  • 1
  • Alunos
  • Solução
Postado

Olá tudo bem,

Crie esta medida e utilize na formatação condicional dos valores da sua matriz:

FC Maior Que Media Dia Semana = 
VAR vMedia = 
    CALCULATE(
        [_Média],
        ALLSELECTED( dCalendario ),
        VALUES( dCalendario[DiaSemana] )
    )
VAR vCelula = [_Média]
VAR vFormatacao = IF( vCelula >= vMedia, "green", "red" )
RETURN
    vFormatacao

Claro, que estou considerando que a sua medida realmente chama-se [_Média] e que a coluna do dia da semana na sua dCalendario chama-se [DiaSemana] favor ajustar se necessário.

Por favor, depois venha nos contar se deu certo.

Obrigado

  • Like 2
  • 0
  • Alunos
Postado
Em 29/05/2023 em 17:14, Alison Pezzott disse:

Olá tudo bem,

Crie esta medida e utilize na formatação condicional dos valores da sua matriz:

FC Maior Que Media Dia Semana = 
VAR vMedia = 
    CALCULATE(
        [_Média],
        ALLSELECTED( dCalendario ),
        VALUES( dCalendario[DiaSemana] )
    )
VAR vCelula = [_Média]
VAR vFormatacao = IF( vCelula >= vMedia, "green", "red" )
RETURN
    vFormatacao

Claro, que estou considerando que a sua medida realmente chama-se [_Média] e que a coluna do dia da semana na sua dCalendario chama-se [DiaSemana] favor ajustar se necessário.

Por favor, depois venha nos contar se deu certo.

Obrigado

Obrigada pelo retorno. 

Acabei nem utilizando essa tecnica, mostrei que fazendo um mapa de calor eles teriam uma análise muito melhor para o que precisavam.

obrigada novamente!!!

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...