Crear una Tabla Calendario en Power BI

0


Una Tabla Calendario en Power BI es imprescindible si quieres realizar análisis de períodos anteriores (día, meses, años…). Por ejemplo, si quieres conocer la variación porcentual de las ventas de este año respecto el año anterior necesitarás una tabla auxiliar de calendario, con esto evitarás errores de referencias cíclicas en el modelo de datos.


  • Las tablas de calendario pueden hacerse de diversas formas, desde el editor de Power Query en M o desde el propio entorno de Power BI Desktop con el lenguaje DAX.

Crear la tabla del calendario
El primer paso será crear la tabla de calendario, opción que encontrarás en el apartado Inicio de Power BI. haremos clic en “Nueva Tabla”. La nueva tabla que le llamaremos “Calendario”.




Para este ejemplo vamos a utilizar la expresión CALENDAR y en el campo de la fórmula donde pone Tabla= escribiremos la siguiente fórmula


CALENDAR("fecha_inicio", "fecha_fin")


También podríamos utilizar otras expresiones como MIN() para la fecha_Inicio y TODAY() para la fecha_fin (entre otras expresiones) y quedaría de la siguiente manera:


Calendario = CALENDAR(MIN(‘Ventas'[Fecha]);TODAY())

  • A mi entender, este es el calendario más completo que he encontrado. Es un calendario dinámico en el sentido que la fecha de inicio corresponde a la fecha más antigua de la tabla y la fecha final la más reciente (fecha de hoy).

Esta expresión nos creará la nueva tabla con el nombre de “Calendario” con una columna “fecha” con la fecha más antigua de nuestra tabla X y la fecha de hoy.


Añadir Columnas
Añadiremos tantas columnas como formatos de fecha necesitemos.





Continuación te muestro los formatos más comunes a añadir a tu Tabla Calendario:
 
 
Para:


Año = YEAR(‘Calendario'[Fecha])

Mes = MONTH(‘Calendario'[Fecha]) 

Dia = DAY(‘Calendario'[Fecha]) 

FechaISO = ‘Calendario'[Año]*10000 + ‘Calendario'[Mes]*100 + ‘Calendario'[Dia]

Semestre= ROUNDUP(‘Calendario'[Mes]/6;0) 

Cuatrimestre = ROUNDUP(‘Calendario'[Mes]/4;0)

Trimestre = ROUNDUP(‘Calendario'[Mes]/3;0)

Bimestre = ROUNDUP(‘Calendario'[Mes]/2;0)

Semana = WEEKNUM(‘Calendario'[Fecha])


Los siguientes formatos te pueden servir de ayuda en algún momento, ¡¡tenlos en cuenta!!


AñoMes = Calendario[Año] & FORMAT(Calendario[Fecha];"mm")
DiaSemana=WEEKDAY(Calendario[Fecha])
NbAño = Calendario[Año]
NbSemestre = "S"&Calendario[Semestre]
NbSemestreAño = Calendario[NbSemestre] & "/"  & RIGHT(Calendario[NbAño];2)
NbCuatrimestre = "C"&Calendario[Cuatrimestre]
NbCuatrimestreAño = Calendario[NbCuatrimestre] &"/" & RIGHT(Calendario[Año];2)
NbTrimestre = "T"&Calendario[Trimestre]
NbTrimestreAño = Calendario[NbTrimestre] & "/" & RIGHT(Calendario[Año];2)
NbBimestre = "B" & Calendario[Bimestre]
NbBimestreAño = Calendario[NbBimestre] &"/" & RIGHT(Calendario[Año];2)
NbMes = Calendario[Fecha].[Mes]
nbMes3L = left(Calendario[NbMes];3)
NbDia = Calendario[Dia] & " " & Calendario[nbMes3L]
NbSemana = "Sem " & Calendario[Semana] & "/" & RIGHT(Calendario[Año];2)
NdDiaSemana = FORMAT(Calendario[Fecha];"dddd")


Tutorial:
En el siguiente link te muestro paso a paso como hacerlo. Aquí

⭐ Si te gustó este tutorial, por favor regístrate en nuestra Lista de correo y Suscríbete a mi canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

Entradas que pueden interesarte

Sin comentarios

Etiquetas:
#aprendiendoexcel365, #josealcaldealias, #Excel, #funciones, #UDF, #Visual Basic, #VBA, #DAX, #Tips, #Basico, #Microsoft Excel, #Cursos Excel OnLine, #Aprende Excel, #Aprende Excel OnLine, #Excel 365, #Power Pivot, #Power BI, #Power Query, #Google Sheets, #Macros, #Código VBA, #Tutoriales Excel, #MTV, #Vbscript, #TypeScript, #Lenguaje M, #fórmulas, #funciones, #paso a paso, #funciones Excel, #libros, #tablas, #formatos, #hojas, #datos, #gráfico, #análisis de datos, #base de datos, #dashboards, #tablas dinámicas, #excel desde cero, #hoja de cálculo, #plantillas de Excel