Saltar al contenido

Resolver promedio dinámico en Power BI


Marc1961

Recommended Posts

Hola a tod@s, soy principiante con Power Bi, y llevo con un problema varias horas al que no le encuentro solución, pero sé que la tiene.

Os paso a detallar el mismo a ver si alguien puede ayudarme, algo que le agradecería muchísimo.

Tengo una matriz con tres niveles como la imagen que está en el excel adjunto y necesito calcular el promedio de SKUS que será número de Días / número total de días.

El problema es que me está calculando el promedio con el contexto de fila y necesito que me lo calcule con el total de la columna.

Como se puede ver en el Centro lo hace correctamente, pero en el desglose (donde pone las tipificaciones 01,08, 10…) no están correctos.

 Las medidas que tengo son estas:

Total Dias = DISTINCTCOUNT(CSI[SoloFecha]) =4 días

SKUS Enviados a Contar = COUNT(CSI[CD])  = Lo que indica en cada fila

Prom. SKUS = [SKUS Enviados a Contar]/[Total Dias] ó Prom. SKUS = divide([SKUS Enviados a Contar],[Total Dias])

 Donde pone el Centro hace bien el promedio porqué los días son 4 y coincide, pero en el resto de filas no.

 Evidentemente la medida de promedio no vale porque está en contexto de fila y necesito que esté en contexto del total de días, que en este caso son 4.

 En los estados y las tipificaciones debería aparecer en todas divide([SKUS Enviados a Contar],4), en este caso pero si cambiamos el valor del slicer cambiaría el 4.

Por favor, ¿Alguien podría echarme una mano con esto?, me estoy volviendo loco y no doy con ello.

Muchas gracias por adelantado.

Promedios Power Bi.xlsx

Enlace a comentario
Compartir con otras webs

Hola Marc

Hace 8 horas, Marc1961 dijo:

Hola a tod@s, soy principiante con Power Bi, y llevo con un problema varias horas al que no le encuentro solución, pero sé que la tiene.

 

Hace 8 horas, Marc1961 dijo:

El problema es que me está calculando el promedio con el contexto de fila y necesito que me lo calcule con el total de la columna.

 

Hace 8 horas, Marc1961 dijo:

Por favor, ¿Alguien podría echarme una mano con esto?, me estoy volviendo loco y no doy con ello.

Para lograr que la medida te arroje el resultado que deseas, debes hacer uso de la función ALL, de tal forma que con ella, vas ignorar el contexto de filtro, la cual seria de la siguiente forma:

Fechas distintas = COUNTROWS(ALL(CSI[SoloFecha]))

Esta medida, además puedes ocultarla para que simplemente solo sea utilizada en tu medida de división, es decir que no es necesaria agregarla a la visualización, en tu caso a la matriz 

Espero con eso ya continúes y te funcione 

 

Saludos 

Enlace a comentario
Compartir con otras webs

  • Gerson Pineda changed the title to Resolver promedio en Power BI

Hola Gerson,

Muchas gracias por tu respuesta!!

La solución que me propones por desgracia, no funciona, ya que devuelve el número total de distintos de SoloFecha de la tabla CSI  que son 94 y yo sólo quiero los de ese centro 

En CSI hay varios centros y está filtrado por el que ves en la tabla que hay en el fichero Excel.

La columna SoloFecha es una columna calculada de la tabla CSI, ya que en esa tabla la fecha es tipo datetime y sólo interesa la fecha.

He probado también con Fechas distintas = COUNTROWS(ALLSELECTED(CSI[SoloFecha])) y arroja el mismo resultado (94).

Cuando puedas, me podrías decir como hacer?

Muchas gracias por anticipado, Gerson!!

Enlace a comentario
Compartir con otras webs

Hola, no hay manera Gerson, puff, me estoy desesperando :(

He intentado esto, pero me lo sigue haciendo a nivel de filas.
                   

MEDIDAS:

Fechas distintas = COUNTROWS(ALLSELECTED(CSI[Fecha]))
Dias totales = calculate(DISTINCTCOUNT(CSI[Fecha]),ALLSELECTED(CSI[CD]))
diferenciaD = if([Fechas distintas]<>[Dias totales],[Fechas distintas]-[Dias totales],0)

PROMEDIO:

                 
Prom. SKUS = SWITCH(TRUE(),
    [diferenciaD]>0, divide([SKUS Enviados a Contar],[Fechas distintas]-[diferenciaD]),
    [diferenciaD]=0, divide([SKUS Enviados a Contar],[Fechas distintas])

    )

Adjunto fichero con datos de tres centros para los días del 15 al 19.

En un centro hay datos 5, días, en otro 4 y en otro 1.

A ver si tú u otra persona me podéis ayudar.

Muchas gracias por adelantado!!

 

Promedios Power Bi.xlsx

Enlace a comentario
Compartir con otras webs

Hola Gerson, disculpa si soy pesado, pero no entiendo como poder aplicarlo.

Adjunté antes una segunda tabla de datos,  te quedaría muy agradecido si con esos datos me pasaras un pbix, con las medidas necesarias para lo que necesito.

Se que es pedir mucho Gerson, pero si no me fuera tan urgente y porqué estoy bloqueado con esto, no te lo pediría.

Esperando que lo comprendas y me puedas ayudar, recibe un cordial saludo,

 

Enlace a comentario
Compartir con otras webs

  • Gerson Pineda changed the title to Resolver promedio dinámico en Power BI
Hace 2 horas, Marc1961 dijo:

Hola,

A quién le pueda servir, al final lo solucione con la función SUMMARIZE, de esta forma:

Fechas distintas = COUNTROWS(SUMMARIZE(csi,CSI[fecha]))

Un saludo a tod@s,

 

 

 

Pero entendí que eso ya estaba resuelto con la función Distinctcount pues el resultado es el mismo

La parte que suponía no podías obtener era la del promedio 

Hace 21 horas, Marc1961 dijo:

Adjunto fichero con datos de tres centros para los días del 15 al 19.

En un centro hay datos 5, días, en otro 4 y en otro 1.

Por lo que seguro también lo lograste

Yo realice algunas pruebas, pero ya me quedo la duda sobre lo que buscabas

image.png

Saludos 

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 96 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • Buenas noches quisiera hacer esta formula auto incremental    =SI(INDIRECTO("'Casos de Prueba'!I1")="Resultados Ciclo 1"; SI(CONTAR.SI(INDIRECTO("'Casos de Prueba'!I:I"); "OK")=0; 0; CONTAR.SI(INDIRECTO("'Casos de Prueba'!I:I"); "OK")); 0)      para que cada vez que copiase y pegase la celda con la formula  se incrementara la letra en este caso la I pasara a J ,como el numero perteneciente a Resultados Ciclo pasando en este caso del 1 al 2.   Tengo también esta formula =CONCATENAR("CP";TEXTO(MAX((SI((ESNUMERO(HALLAR("CP";A$1:A1)))*(A$1:A1<>"");VALOR(EXTRAE(A$1:A1;3;3));0))+1);"000")&" - "&B2) quisiera que no tuviera los 3 ceros si no que fuera por ejemplo CP1 y se fuera incrementando. Gracias un saludo.
    • Con el diseño así como lo tiene en su libro, una fórmula de BUSCARV con COINCIDIR debería ser de utilidad =C5*BUSCARV($C$1,Tabla1[#Todo],COINCIDIR($D5,Tabla1[#Encabezados],0)) Es con lo que participaría en su consulta. Lo que resta es definir que hacer si no encuentra la OT porque así como esta le devolvería error en ese caso, o si tiene condiciones que haya podido omitir también le afectarían el resultado.
    • He cambiado mi macro a este: Sub repetir() Set a = Sheets(ActiveSheet.Name) uf = a.Range("C" & Rows.Count).End(xlUp).Row 'ultima fila con datos ActiveCell.Select ActiveCell.Offset(1, 0).Select   'Application.OnTime Now + TimeValue("00:00:10"), "repetir", , True End If End Sub   Lo que no se es como detenerlo al llegar a la ultima fila con datos de la columna C. Muchas gracias
    • Buenas tardes a todos. Tengo un problema que preciso de vuestra ayuda.  Tengo que controlar los gastos de la oficina que trabajo y he de repartir unos gastos a % según una OT y unos tipos de gastos. Envío un archivo adjunto. Lo que necesito es que lo que aparece en la columna en amarillo lo haga automáticamente, teniendo en cuenta los datos de la tabla a la derecha. Por ejemplo, el primer gasto tiene una cuota de 1477 euros y teniendo en cuenta que es un gasto de tipo Común y que la OT es la 12810234, le corresponde un gasto de 605,57 euros ya que según la tabla de la derecha su % a imputar es de un 41%. ¿alguien me puede ayudar con la formula? He de añadir muchas más líneas y más hojas con el resto de OT y en el futuro cambiar más datos, así que necesito automatizarlo con una formula Excel. Gracias. Control de gastos.xlsx
    • Hola buenas tardes: Por favor me pueden ayudar a realizar lo siguiente. ejecutar una macro después de un tiempo, que recorra una columna a partir de la celda activa hacia abajo. Es una lista extensa, que filtro desde la columna B. y solo me muestra las filas que me interesan. ejemplo: Si mi celda activa es la C23 ejecutar la macro y baje una celda y repite la macro después de 20 segundos y lo vuelve hacer(Simpre bajando una celda), y que este se detenga hasta la ultima fila que este visible en el filtro. Ya que puedo tener muchos datos mas.   Gracias   Prueba filtro y avance.xlsm
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.