Hoy trabajaremos con otro de los complementos Power de Excel Power Pivot, para dar una posible solución a una lectora que preguntaba:
En particular crearemos una sencilla medida dentro de nuestro modelo de datos que utilice la función DAX: DISTINCTCOUNT.
Comencemos...
Tenemos en nuestra hoja de cálculo un listado de ventas del año por clientes y días... (tabla llamada 'TblVentas')...
Esta tabla la agregaremos al modelo de datos.
Una forma es, teniendo la ficha PowerPivot > grupo Tablas > botón Agregar a modelo de datos
Con la Tabla cargada en el modelo generaremos una Tabla dinámica desde esa tabla.
En el editor de Power Pivot, en su Ficha de Inicio > desplegable Tabla dinámica > opción Tabla dinámica
Insertamos la tabla dinámica en nuestra hoja de cálculo y la diseñamos llevando los campos 'cliente' y 'Fecha' al área de filas y el campo 'Ventas' al área de valores resumido por suma (o por promedio según necesidad), tal como se ve en la imagen siguiente
En el siguiente paso, y trabajando desde la tabla dinámica en la hoja de cálculo, procedemos a realizar una agrupación del campo Fechas por 'Meses'...
Basta seleccionar una fecha en la tabla dinámica y hacer clic derecho y seleccionar Agrupar desde el menú contextual.
Esta agrupación en la tabla dinámica tiene su efecto sobre la tabla cargada en el modelo de datos... y es que se han generado algunas columnas calculadas automáticamente como se ven en la imagen:
Fechas (índice de meses): =MONTH([Fechas])
Fechas (meses): =FORMAT([Fechas]; "MMM")
Nota: igualmente podíamos haber creado nuestras columnas calculadas manualmente.
Paso importante. Añadimos una medida sobre la columna calculada Fechas (meses).
La llamaré 'unicos' y emplearemos la función DAX de DISTINCTCOUNT(campo)
unicos:=DISTINCTCOUNT([Fechas (mes)])
Recuerda situarte en la parte inferior (área de cálculo) para insertar nuestra medida....
Con la medida creada volvemos a la tabla dinámica (y la actualizamos si fuera necesario), viendo y teniendo a nuestra disposición la medida creada.
Arrastraremos la medida al área de valores...
Finalmente aplicaremos un filtro sobre el campo 'Cliente', filtro por valor cuando el campo de 'unicos' (nuestra medida) sea mayor o igual que siete (en mi ejemplo más simple mayor o igual que 9):
Tras aceptar solo veremos en nuestra tabla dinámica aquellos clientes que han realizado ventas en 9 o más meses...
Veamos comparadas una tabla dinámica completa y la tabla dinámica resultante de nuestras operaciones
[...]He creado una tabla dinámica con una medida calculada que me da el total de ventas por meses de más de 500 clientes. Querría poder filtrarlos por aquellos que han tenido compras todos los meses o como mínimo 7 meses 😬... Para hacer una gráfica que compare varios indicadores... Necesito reducir el número de clientes a aquellos que hayan comprado en 7 o más meses[...] |
En particular crearemos una sencilla medida dentro de nuestro modelo de datos que utilice la función DAX: DISTINCTCOUNT.
Comencemos...
Tenemos en nuestra hoja de cálculo un listado de ventas del año por clientes y días... (tabla llamada 'TblVentas')...
Esta tabla la agregaremos al modelo de datos.
Una forma es, teniendo la ficha PowerPivot > grupo Tablas > botón Agregar a modelo de datos
Con la Tabla cargada en el modelo generaremos una Tabla dinámica desde esa tabla.
En el editor de Power Pivot, en su Ficha de Inicio > desplegable Tabla dinámica > opción Tabla dinámica
Insertamos la tabla dinámica en nuestra hoja de cálculo y la diseñamos llevando los campos 'cliente' y 'Fecha' al área de filas y el campo 'Ventas' al área de valores resumido por suma (o por promedio según necesidad), tal como se ve en la imagen siguiente
En el siguiente paso, y trabajando desde la tabla dinámica en la hoja de cálculo, procedemos a realizar una agrupación del campo Fechas por 'Meses'...
Basta seleccionar una fecha en la tabla dinámica y hacer clic derecho y seleccionar Agrupar desde el menú contextual.
Esta agrupación en la tabla dinámica tiene su efecto sobre la tabla cargada en el modelo de datos... y es que se han generado algunas columnas calculadas automáticamente como se ven en la imagen:
Fechas (índice de meses): =MONTH([Fechas])
Fechas (meses): =FORMAT([Fechas]; "MMM")
Nota: igualmente podíamos haber creado nuestras columnas calculadas manualmente.
Paso importante. Añadimos una medida sobre la columna calculada Fechas (meses).
La llamaré 'unicos' y emplearemos la función DAX de DISTINCTCOUNT(campo)
unicos:=DISTINCTCOUNT([Fechas (mes)])
Recuerda situarte en la parte inferior (área de cálculo) para insertar nuestra medida....
Con la medida creada volvemos a la tabla dinámica (y la actualizamos si fuera necesario), viendo y teniendo a nuestra disposición la medida creada.
Arrastraremos la medida al área de valores...
Finalmente aplicaremos un filtro sobre el campo 'Cliente', filtro por valor cuando el campo de 'unicos' (nuestra medida) sea mayor o igual que siete (en mi ejemplo más simple mayor o igual que 9):
Tras aceptar solo veremos en nuestra tabla dinámica aquellos clientes que han realizado ventas en 9 o más meses...
Veamos comparadas una tabla dinámica completa y la tabla dinámica resultante de nuestras operaciones
un buen tip
ResponderEliminar;-)
EliminarGracias