Blog

Postado em em 9 de novembro de 2020

Dias Úteis no Power BI – Como Calcular? Método Passo a Passo

Já precisou calcular Dias Úteis no Power BI? No Excel existe uma fórmula pronta para isso, mas no Power BI não é bem assim.

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Para receber a planilha que usamos na aula no seu e-mail, preencha:

O que são dias úteis entre datas no Power BI?

Nada mais é do que o número de dias úteis entre duas datas, no entanto no Power BI não temos uma função que nem temos no Excel para fazer esse cálculo, ou seja, não temos uma função para calcular dias úteis. No Power BI isso deve ser feito de uma forma diferente e não tão direta como acontece no Excel.

Quando utilizar o cálculo de dias úteis entre datas?

Esse cálculo será utilizando sempre que o usuário precisar saber a quantidade de dias úteis entre duas datas para suas atividades sejam elas quais forem. Então teremos que ter como base além de sábado e domingo um calendário com feriados no Power BI para poder fazer essa análise completa.

Calculando dias úteis no Power BI

Antes de começar é importante analisar as informações que temos e precisamos para poder fazer esse tipo de cálculo.

Base de dados
Base de dados

Temos uma base de dados na qual vamos efetuar o cálculo de dias úteis entre as datas para verificar se as entregas foram feitas ou não dentro do prazo estipulado para cada um dos serviços.

Base calendário
Base calendário

Temos uma base calendário que é muito importante, pois possui todas as datas do primeiro dia do ano até o último dia do ano das datas que estão na base de dados. Isso quer dizer que se temos informações de 2018 a 2020 nessa base teremos todas as datas do primeiro dia de 2018 até o último dia de 2020.

Base de feriados
Base de feriados

Por fim temos uma base com todos os feriados dos anos que serão tratados dentro da base de dados, ou seja, todos os feriados de 2018 a 2020.

Com essas 3 bases já podemos iniciar o nosso cálculo onde vamos poder fazer o mesmo papel da função DIATRABALHO do Excel no Power BI.

Inicialmente vamos criar uma Nova Coluna para calcular a quantidade de dias corridos entre as duas datas: data de pedido e data de entrega. Para isso basta criar uma coluna na opção do menu de ferramentas ou clicando com o botão direito do mouse.

Dias Corridos = DATEDIF('Base Transportes'[Data do Pedido],'Base Transportes'[Data da Entrega],DAY)

Para isso vamos utilizar a função DATEDIFF que serve para calcular a diferença entre datas. Com isso vamos colocar uma data em cada argumento e no último argumento vamos indicar qual o resultado que queremos, neste caso queremos a diferença em dias.

Resultado dos dias corridos
Resultado dos dias corridos

Aqui já temos então a análise de dias corridos entre a data do pedido e a data da entrega, então esse cálculo é mais simples, pois só precisamos informar as duas datas e informar em que unidade teremos esse resultado, que neste caso foi em dias.

Vamos agora fazer uma análise de dias úteis dentro da base calendário. Nesse primeiro momento vamos apenas verificar se o dia é útil sendo de segunda a sexta ou se não é dia útil considerando sábado e domingo. Logo em seguida vamos inserir os feriados para complementar a análise.

Dia da Semana? = IF(Calendario[Nome do Dia]="sábado"||Calendario[Nome do Dia]="domingo","Não","Sim")

Para essa primeira análise vamos utilizar a função IF que é a função SE dentro do Power BI. Então vamos verificar se o nome do dia é sábado OU (vamos utilizar as duas barras || para representar essa função) domingo.

OBS: O usuário poderá utilizar a função OR para representar a função OU caso prefira, tanto a função OR quanto as duas barras || terão o mesmo resultado.

Em caso positivo vamos retornar o texto “Não”, pois não é um dia útil, caso contrário vamos retornar o texto “Sim”, pois será um dia útil.

Resultado do dia da semana
Resultado do dia da semana

Com isso a primeira análise já foi feita e agora temos que partir para a segunda análise para incluir os feriados. Então vamos criar outra coluna para verificar se aquela data é feriado ou não. Isso será feito com a comparação das datas com a datas dos feriados, ou seja, se elas forem iguais é porque temos um feriado, caso contrário não será feriado.

Feriado? = RELATED(Feriados[Feriado])

Para isso vamos utilizar a função RELATED para fazer uma relação entre as datas da base calendário com as datas da base de feriados. Assim o programa vai retornar apenas as datas que ele encontrar dentro da base de feriados, desta forma teremos somente preenchidas as datas que são feriados enquanto as demais ficarão em branco.

Resultado da fórmula de feriado
Resultado da fórmula de feriado

Com essas duas colunas podemos verificar se o dia é útil ou não, pois vamos analisar se é um dia da semana e se a data de feriado está em branco. Caso não seja dia da semana ou tenha feriado não teremos um dia útil.

Dia Util? = IF(Calendario[Dia da Semana?]="Sim"&&Calendario[Feriado?]=BLANK(),1,0)

Vamos novamente utilizar a função IF agora com o operador && que representa a função E (ou AND em inglês), pois agora as duas condições precisam ser satisfeitas ao mesmo tempo.

Vamos comparar a coluna de feriado com a função BLANK, que é para indicar se a informação está em branco. Caso o usuário utilize o vazio “” é possível que o programa acuse um erro, pois a informação dessa coluna é uma data e não um texto.

Resultado dos dias úteis no Power BI
Resultado do dia útil

Agora todos os dias úteis dentro dessa nova coluna serão representados pelo número 1 enquanto os dias não úteis serão representados pelo número 0.

Com essas informações já seremos capazes de efetuar o cálculo de dias úteis, pois agora basta somar a quantidade de dias dessa última coluna criada entre as datas desejadas, assim teremos a quantidade de dias úteis entre as datas apenas com a soma.

Agora basta voltar a base de dados para criar a coluna que vai fazer esse cálculo de dias úteis para que possamos comparar com a nossa coluna de prazo.

Dias Uteis = CALCULATE(SUM(Calendario[Dia Util?]),DATESBETWEEN(Calendario[Data],'Base Transportes'[Data do Pedido],'Base Transportes'[Data da Entrega]))-1

Para esse cálculo vamos utilizar a função CALCULATE, pois precisamos de uma operação com um filtro, ou seja, com uma restrição. A operação que será feita é de soma, por isso o SUM, ou seja, vamos somar a quantidade de dias úteis baseado no filtro, que é o intervalo de datas (DATESBETWEEN).

Com isso teremos a soma dos dias úteis somente entre essas duas datas, que são as datas do pedido e data de entrega que estão sendo analisados linha por linha. Lembrando de subtrair 1 no final, pois o dia do pedido não é considerado.

Resultado dos dias úteis no Power BI
Resultado dos dias úteis

Com isso o usuário ainda poderia fazer uma última coluna se quiser para verificar se a quantidade de dias úteis é menor do que o prazo de entrega para saber se os pedidos foram ou não entregues dentro desse prazo.

Com isso é possível inserir mais uma informação dentro de um gráfico para analisar quantos pedidos estão sendo entregues no prazo ou fora do prazo para analisar a melhor estratégia para melhorar as entregas.

Portanto nessa aula foi possível aprender como calcular a quantidade de dias úteis entre duas datas que é algo que muitos têm dúvidas e não sabem como prosseguir. Agora basta colocar em prática nas planilhas de trabalho para criar relatórios ainda mais detalhados.

Hashtag Treinamentos

Para acessar outras publicações de Power BI, clique aqui!


Quer aprender mais sobre Power BI com um minicurso básico gratuito?

Quer sair do zero no Python e virar uma referência na sua empresa? Inscreva-se agora mesmo no Python Impressionador