domingo, 24 de maio de 2020

Fixando os Formatos em Tabelas Dinâmicas

O uso de tabelas dinâmicas é muito comum em relatórios de entrega periódica. Por isso, costuma-se atualizar a fonte dos dados e, para refletir tais alterações nas dinâmicas, seleciona-se a opção de Atualizar (na aba Dados ou clicando com o botão direito na tabela). Vejamos um exemplo, em que temos uma base de registro de volumes de vendas e reclamações recebidas por mês e por loja:


Podemos criar uma tabela dinâmica fazendo uso do atalho [Alt + T + B], confirmando com o OK. Em seguida, arrastamos o campo "Mês" para a área Colunas e o campo "Loja" para a área Linhas. Fazendo isso, obtemos a seguinte estrutura da tabela:


Agora vamos criar um campo calculado para o índice de reclamações, que seria a quantidade de reclamações dividida pela quantidade de ordens de venda em um determinado período. Para isso, seleciona-se a tabela dinâmica e, na barra superior de ferramentas, escolhemos a opção:


Neste caso, o novo campo, que podemos chamar de "ÍndiceReclamações", é uma conta de divisão entre "Qtd Reclamações" e "Qtd Ordens de Venda":


Arrastando os campos "ÍndiceReclamações" e "Qtd Reclamações" para a área Valores (e passando as informações para as linhas), removendo a coluna de total geral, ajustando a largura das colunas e formatando as células com valores, podemos obter o seguinte resultado:


Ok, tudo estaria pronto para reportarmos este mês. Mas vamos supor que no mês que vem sejam adicionadas duas linhas na nossa base inicial:


Primeiramente, é preciso garantir que a tabela dinâmica incluirá as novas linhas, selecionando a opção de alterar fonte de dados:


Nota-se que o intervalo de dados termina na linha 11 (range $A$1:$D$11):


Após alterar para a linha 13 (range $A$1:$D$13), incluindo os novos dados, e confirmar, a tabela dinâmica será atualizada automaticamente:


E note que houve duas mudanças na formatação:
  1. A largura das colunas foi auto-ajustada pelo conteúdo;
  2. Os formatos dos valores foram perdidos (o índice de reclamação não consta mais como porcentagem).
Para evitar que o primeiro problema volte a ocorrer, é necessário clicar com o botão direito na tabela dinâmica e selecionar Opções da Tabela Dinâmica.... Na tela recém aberta, vamos à aba Layout e Formato, onde precisamos desmarcar a opção Ajustar automaticamente a largura das colunas ao atualizar:


Feito isso, vamos garantir que a formatação dos valores não seja alterada:


Selecionando Formato do Número:


Aqui, o campo "ÍndiceReclamações" será configurado como porcentagem com um algarismo depois da vírgula:


Pronto! Agora basta formatar a tabela uma última vez e sempre que a base ou a TD for atualizada no futuro, todos os formatos serão mantidos:


Para acessar a planilha deste exemplo, clique aqui.

Tem alguma dúvida, crítica ou sugestão? Comente aí embaixo!

terça-feira, 12 de maio de 2020

Contagem Distinta em Tabelas Dinâmicas

Uma ferramenta muito útil no Excel é a tabela dinâmica (Pivot Table), que permite criar e alterar resumos dos dados de forma rápida e prática. O objetivo deste post é mostrar uma possibilidade não muito conhecida de exibir a contagem distinta de itens em uma base.

Vejamos um exemplo em que temos uma loja de médio porte de melhoramentos domiciliares (construção, acabamento, decoração etc) e queremos incentivar os vendedores a concluírem vendas em departamentos diferentes para promover um maior entendimento sobre estoque e posicionamento dos itens. Para avaliação dos resultados do primeiro dia da campanha interna, recebemos uma base de dados com as vendas concluídas em 01/05/2020:


Selecionando uma célula da tabela, é possível criar uma tabela dinâmica com o atalho [Alt + T + B], sendo necessário apenas confirmar o intervalo de dados e onde a tabela dinâmica deverá ficar. Aqui, precisamos selecionar a opção Adicionar estes dados ao Modelo de Dados para habilitar a contagem distinta (versão 2013 ou mais recente):


Prosseguindo com a criação, uma nova aba será adicionada ao arquivo e, após arrastarmos o campo "UserVendedor" para a área Linhas e o campo "Setor" para a área Valores, devemos configurar a exibição do campo "Setor":


Na nova tela que deve aparecer, deverá ser selecionada a opção de Contagem Distinta, de forma a exibir o número de setores distintos em que cada vendedor concluiu pedidos:


Como resultado, obtemos a tabela dinâmica abaixo, a partir da qual podemos constatar que o vendedor que concluiu vendas em mais departamentos neste dia foi o de usuário "yfernandes".


Note que se, na criação da tabela dinâmica, não tivéssemos selecionado a opção de Adicionar estes dados ao Modelo de Dados, a opção de contagem distinta não seria exibida:


Para acessar os dados deste exemplo, clique aqui.

Tem alguma dúvida, crítica ou sugestão? Comente aí embaixo!

terça-feira, 5 de maio de 2020

Calculando Porcentagens de Categorias no Power BI

Ao elaborar um relatório no Power BI, é muito comum termos que exibir algumas informações que não estão explícitas nas bases de dados. Vejamos um exemplo, onde os dados representam a receita bruta de uma empresa fictícia por canal de venda para acompanhamento dos impactos do COVID-19, de acordo com a tabela abaixo:


Neste caso, vamos elaborar um gráfico de colunas empilhadas que mostra a evolução dos canais de venda em termos de receita. Após importação dos dados para o Power BI, ajustes dos tipos e algumas configurações do visual, obtemos o seguinte resultado:


Agora vamos supor que queremos exibir a representatividade de cada canal sobre o total das vendas de cada mês ao mover o cursor sobre uma região do gráfico. Por exemplo, na imagem abaixo, ao selecionar a região de "Varejo (lojas físicas)" no mês de fev/2020, desejamos que apareça 29,4% (que seriam as vendas em lojas físicas, R$ 12.183 kBRL, sobre as vendas totais naquele mês, de R$ 41.383 kBRL).


É necessário criar uma nova Medida (Measure, na versão em Inglês). Neste caso, precisamos que o cálculo seja a receita de um determinado canal dividida pela soma das receitas desconsiderando a categorização por canal de venda. Ou seja, para que o denominador não seja filtrado pela coluna "Canal de venda", faremos uso da função ALL do DAX (linguagem padrão das medidas no Power BI):

Representatividade = SUM(Vendas[Receita (kBRL)])/CALCULATE(SUM(Vendas[Receita (kBRL)]);ALL(Vendas[Canal de venda]))

No numerador, a função SUM é aplicada de forma usual, uma vez que deve ser suscetível à categorização gerada pela coluna "Canal de venda" no campo "Legenda". Note que o SUM é utilizado neste caso, pois, para que a coluna "Receita (kBRL)" retorne um valor, ela deve estar contida dentro de uma função agregadora (como SUM ou AVG). No caso do denominador, torna-se necessário o uso da função CALCULATE, uma vez que não apenas desejamos somar as vendas, como também ignorar os filtros do visual na coluna "Canal de venda" por meio do ALL.

Em seguida, ao selecionar a medida, é possível configurá-la para exibição como porcentagem e com apenas um algarismo depois da vírgula:


Por fim, basta arrastar a nova medida para o campo "Tooltips" da visualização e já é possível verificar a representatividade ao passar o ponteiro do mouse sobre as regiões do gráfico.


Teste você mesmo, acesse os dados deste exemplo clicando aqui.

Tem alguma dúvida, crítica ou sugestão? Comente aí embaixo!