TABLAS DINAMICAS
FILTROS AVANZADOS
FORMULAS DAX Y FUNCION NARRATIVA INTELIGENTE
ALL
La función ALL en Power
BI (lenguaje DAX) es una función de tabla que devuelve todas las filas de una
tabla o todos los valores de una columna, ignorando cualquier filtro que se
haya aplicado. Se utiliza comúnmente para crear cálculos porcentuales o para
comparar un subconjunto con el total general.
EJEMPLO:
ventas_totales =
CALCULATE(SUM(TRABAJADORES[salarios]), ALL(TRABAJADORES))
ALLSELECTED
Devuelve todas las filas
de una tabla o todos los valores de una columna, ignorando los filtros que se
podrían haber aplicado dentro de la consulta, pero manteniendo los filtros que
proceden de fuera.
La función ALLSELECTED
obtiene el contexto que representa todas las filas y columnas de la consulta, a
la vez que mantiene filtros y contextos explícitos distintos de los filtros de
fila y columna. Esta función se puede usar para obtener totales visuales en
consultas.
ALLSELECTED([<tableName>
| <columnName>[, <columnName>[, <columnName>[,…]]]] )
EJEMPLO:
ventas_totales2 =
CALCULATE(SUM(TRABAJADORES[salarios]), ALLSELECTED(TRABAJADORES[AREA]))
ALLEXCEPT:
La
función ALLEXCEPT en DAX se usa para eliminar todos los filtros de una tabla,
excepto en las columnas específicas que decidas conservar. Es un modificador de
CALCULATE muy útil para calcular porcentajes sobre un total general o aplicar
medidas a nivel de categoría ignorando otros filtros del reporte.
Sintaxis
ALLEXCEPT(Tabla,
Columna1, Columna2...)
Tabla: La tabla base de la que deseas
limpiar los filtros.
Columnas: La columna o columnas cuyos
filtros deseas mantener activos en el contexto.
EJEMPLO:
ventas_totales3 =
CALCULATE(SUM(TRABAJADORES[salarios]),
ALLEXCEPT(TRABAJADORES,TRABAJADORES[AREA]))
DATATABLE
La función DATATABLE en DAX se usa
para crear tablas estáticas directamente en el modelo de datos sin importar
fuentes externas. Es ideal para tablas desconectadas o de parámetros
EJEMPLO:
EJEMPLO:
Sales
Performance =
DATATABLE(
"Region", STRING,
"Product Category", STRING,
"Marketing Spend", INTEGER,
"Revenue", INTEGER,
"Units Sold", INTEGER,
"Customer Satisfaction", DOUBLE,
{
{"North",
"Electronics", 45000, 280000, 1200, 4.5},
{"North",
"Clothing", 32000, 195000, 2800, 4.2},
{"North", "Home &
Garden", 28000, 165000, 1500, 4.0},
{"North", "Sports",
18000, 98000, 900, 4.3},
{"South",
"Electronics", 52000, 310000, 1400, 4.6},
{"South",
"Clothing", 25000, 142000, 2200, 3.9},
{"South", "Home &
Garden", 35000, 210000, 1800, 4.4},
{"South", "Sports",
22000, 125000, 1100, 4.1},
{"East",
"Electronics", 38000, 245000, 1050, 4.3},
{"East",
"Clothing", 42000, 268000, 3500, 4.5},
{"East", "Home &
Garden", 30000, 178000, 1650, 4.2},
{"East", "Sports",
15000, 82000, 780, 3.8},
{"West",
"Electronics", 60000, 385000, 1650, 4.7},
{"West",
"Clothing", 28000, 158000, 2400, 4.0},
{"West", "Home &
Garden", 22000, 130000, 1200, 3.9},
{"West", "Sports",
35000, 195000, 1450, 4.4}
}
)
RELATED
La función RELATED en DAX permite traer
valores desde el lado “uno” de una relación (tabla de dimensiones) hacia la
tabla actual (lado “muchos” o tabla de hechos). Funciona de manera similar a la
función BUSCARV de Excel, requiriendo obligatoriamente un contexto de fila y
una relación previa entre ambas tablas
Sintaxis
RELATED(Columna_Destino)
Puntos clave sobre
RELATED:
EJEMPLO:
salarios =
RELATED(SALARIO[SUELDO])
RANKX
RANKX es una función
iteradora de DAX que devuelve la posición o el rango de una expresión evaluada
frente a una lista de valores. Su uso más común es crear rankings dinámicos en
Power BI.
RANKX(<table>,
<expression>[, <value>[, <order>[, <ties>]]])
EJEMPLO:
Ranking2 =
RANKX(ALL(TRABAJADORES[AREA]),[total],,DESC,Dense)
NARRATIVA INTELIGENTE
Las narrativas
inteligentes de Power BI utilizan inteligencia artificial para generar
automáticamente resúmenes y explicaciones en lenguaje natural sobre sus datos.
Estos textos se actualizan de forma dinámica y responden a los filtros
aplicados en el informe, facilitando la comprensión y la toma de decisiones
para los usuarios
PARA ACTIVARLO PODEMOS IR
A OPCIONES Y ACTIVAR EN OPCIONES DE LOS OBJETOS VISUALES
USO DE ENCABEZADO EN
OBJETOS VISUALES MODERNOS CON OPCIONES DE ESTILO ACTUALIZADO
PARA ACTIVAR TIENES QUE
IR A ICONOS DE OBJETO VISUAL
CONCEPTO
SELECTED VALUE
Devuelve el valor cuando el contexto de columnName
se ha filtrado solo a un valor distinto.
De lo contrario, devuelve alternateResult.
SELECTEDVALUE(<columnName>[, <alternateResult>])
ISFILTERED
Devuelve TRUE cuando se filtra directamente la tabla o columna especificadas.
ISFILTERED(<TableNameOrColumnName>)
PODEMOS USARLO COMO TITULO DINAMICO EN MATRICES:
TITULO DINAMICO = IF(ISFILTERED(ZONA[ZONA])," LAS VENTAS DE LA CIUDAD " &
SELECTEDVALUE(ZONA[ZONA]) & " TOTALIZAN " &[TOTALES])
TAMBIEN PODEMOS USARLO COMO COLOR DINAMICO EN UN GRAFICO:
COLOR DINAMICO = IF(SELECTEDVALUE(TRABAJADORES[AREA])="PRODUCCION","#e0ad4d","#242424")
MEASURE
Presenta una definición de medida en una instrucción DEFINE de una consulta DAX.
[DEFINE
(
MEASURE <table name>[<measure name>] = <scalar expression>
) +
]
(EVALUATE <table expression>)
USO DE LA VISTA DE TMDL :
DESPUES DE LA ARRASTRAR LA TABLA PODEMOS COLOCAR EL CODIGO PARA HACER
MEDIDAS MULTIPLES
measure 'suma1' =sum(TRABAJADORES[SUELDO])
measure 'suma2' =sum(TRABAJADORES[EXTRA])
measure 'suma3' =sum(TRABAJADORES[BONO])
MAPA ARGIS
EN EL OBJETO VISUAL ARGIS, PODEMOS HACER UNA SELECCION,
Y PONER EL TAMAÑO DE LA INFORMACION, Y
CAMBIAR EL MAPA BASE
PARA HACER UN BOTON EN POWER BI:
1) PRIMERO HACEMOS MARCADORES EN LA PAGINA A VINCULAR.
2) LUEGO INSERTAMOS EL BOTON,
3) HABILITAR ACCION Y PONERLE TIPO MARCADOR Y EL NOMBRE DADO DEL MARCADOR
PARA USAR LOS SCRIPTS DE PYTHON
1) PRIMERO INSTALAR PYTHON
2) INSTALAR LIBRERIAS EN DOS
3) INSTALAR PANDAS Y MATPLOTLIB
PANDAS:
py -m pip install pandas
MATPLOTLIB:
python -m pip install -U pip
python -m pip install -U matplotlib
4)HABILITAR PYTHON EN OPCIONES DE POWER BI
EJEMPLO DE SCRIPT EN POWER QUERY:
import pandas as pd
dataset["primeraletra"] = dataset["ZONA"].str.slice(stop=1)
dataset=dataset.head(5)
TARJETAS MULTIPLES
PODEMOS USAR TARJETAS MULTIPLES PARA DAR A CONOCER
VARIOS VALORES CON SU RESPECTIVA CATEGORIA,
ADEMAS, PODEMOS DAR FORMATO
FUNCIONES DAX:
SUMMARIZE:
Devuelve una tabla de resumen de los totales solicitados en un conjunto de grupos.
SINTAXIS:
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
EJEMPLO:
areas = SUMMARIZE(TRABAJADORES,
COMO MEDIDA:
MININMO AREAS = MINX(SUMMARIZE(TRABAJADORES,
SUMMARIZECOLUMNS
Devuelve una tabla de resumen sobre un conjunto de grupos.
SUMMARIZECOLUMNS( <groupBy_columnName> [, < groupBy_columnName >]…, [<filterTable>]…[, <name>, <expression>]…)
EJEMPLO:
TABLANUEVA = SUMMARIZECOLUMNS(TRABAJADORES[
EXCEPT
Devuelve las filas de la primera tabla de la expresión que no aparecen en la segunda tabla.
EXCEPT(<table_expression1>, <table_expression2>)
SUMMARIZE:
Devuelve una tabla de resumen de los totales solicitados en un conjunto de grupos.
SINTAXIS:
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
ALLSELECTED
Devuelve todas las filas de una tabla o todos los valores de una columna,
ignorando los filtros que se podrían haber aplicado dentro de la consulta, pero manteniendo los filtros que proceden de fuera.
La función ALLSELECTED obtiene el contexto que representa todas las filas y columnas de la consulta,
a la vez que mantiene filtros y contextos explícitos distintos de los filtros de fila y columna.
Esta función se puede usar para obtener totales visuales en consultas.
SINTAXIS:
ALLSELECTED([<tableName> | <columnName>[, <columnName>[, <columnName>[,…]]]] )
|
medidas
ALL SELECTED = CALCULATE(TRABAJADORES[TOTAL SUELDO],ALLSELECTED(TRABAJADORES[AREA]))
ALL_EXCEPT = CALCULATE([TOTAL SUELDO],ALLEXCEPT(TRABAJADORES,TRABAJADORES[CIUDAD]))
este va en un grafico combinado:
tambien una medida de objetivo
FORMATO COLOR = IF([TOTAL SUELDO]>[VALOR OBJETIVO],"GREEN","")
este va en tarjeta rapida:
ICONO AZUL = "https://upload.wikimedia.org/wikipedia/commons/b/bd/Dark_Green_Arrow_Up.svg"
ICONO ROJO = "https://www.svgrepo.com/show/402152/red-circle.svg"
ICONOS = IF([TOTAL SUELDO]>[VALOR OBJETIVO],[ICONO AZUL],[ICONO ROJO])
RANK = RANK(ALLSELECTED(TRABAJADORES[CIUDAD]),ORDERBY(TRABAJADORES[TOTAL SUELDO],ASC))
PRODUCTOS TOP CON VARIABLE
PRODUCTO TOP = VAR TABLA_HIGH=
TOPN(2,ALL(POBLACION[CATEGORIA]),[TOTAL],DESC)
VAR RESULTADO=
CONCATENATEX(
TABLA_HIGH,
POBLACION[CATEGORIA],
"||")
RETURN RESULTADO
DATA:
FUNCIONES DAX
ADDCOLUMNS
Agrega columnas calculadas a la tabla o expresión de tabla especificadas.
ADDCOLUMNS(<table>, <name>, <expression>[, <name>, <expression>]…)
EJEMPLO:
CALENDARIO = ADDCOLUMNS(CALENDAR(MIN(TRABAJADORES[FECHA_INGRESO]),
MAX(TRABAJADORES[FECHA_INGRESO])),"AÑO",YEAR([Date]),"MES",MONTH([Date]))
TOPN
Devuelve las N filas superiores de la tabla especificada.
TOPN(<N_Value>, <Table>, <OrderBy_Expression>, [<Order>[, <OrderBy_Expression>, [<Order>]]…])
PODEMOS APLICAR EL FILTRO DE POSICION EN EL PANEL DE FILTRO TOP N
VAR
Almacena el resultado de una expresión como una variable con nombre,
que luego se puede pasar como argumento a otras expresiones de medida.
Una vez calculados los valores resultantes para una expresión variable,
esos valores no cambian, incluso si se hace referencia a la variable en otra expresión.
VAR <name> = <expression>
EJEMPLO:
COLOR7 =
VAR XSUELDO =[TOTAL]
VAR XCOLOR=
SWITCH(TRUE,
XSUELDO>50000,"BLUE",
XSUELDO>25000,"GREEN",
XSUELDO<=25000,"RED")
RETURN XCOLOR
DIVIDE
Realiza la división y devuelve un resultado alternativo o BLANK() en la división en 0.
DIVIDE(<numerator>, <denominator> [,<alternateresult>])
FUNCIONES DAX
YEAR : año
QUARTER: trimestre de año
MONTH: mes de año
DAY: dia de la fecha
WEEKNUM: semana depende de que; dia,mes, año
WEEKDAY: dia de la semana
DATEDIFF: cantidad de dias entre una fecha y otra,
primero inicio, luego fin , luego el tipo de contabilidad
TODAY(): hoy
FORMAT: cambia un valor en un formato
ejemplos:
mes_texto = FORMAT(CALENDARIO[Date],"mmmm")
trimester_forn = FORMAT(CALENDARIO[Date],"Q"&"T")
DIA SEMANA = FORMAT(CALENDARIO[Date],"DDDD")
CALENDAR:
Devuelve una tabla con una sola columna denominada "Date" que contiene un conjunto contiguo de fechas. El intervalo de fechas es desde la fecha de inicio especificada hasta la fecha de finalización especificada, inclusive de esas dos fechas.
ejemplo:
CALENDARIO_NEGOCIO = CALENDAR(MIN(VENTAS[FECHA]),MAX(VENTAS[FECHA]))
CALENDARAUTO:
Devuelve una tabla con una sola columna denominada "Date" que contiene un conjunto contiguo de fechas. El intervalo de fechas se calcula automáticamente en función de los datos del modelo.
CALENDARAUTO([fiscal_year_end_month])
DATEADD:
Devuelve una tabla que contiene una columna de fechas, desplazada hacia delante o hacia atrás en el tiempo por el número especificado de intervalos de las fechas en el contexto actual.Es decir sirve para comparar con fechas pasadas
primero pide fecha,periodos anteriores y tipo, año, trimestre, mes y dia
ejemplo
total_ap = CALCULATE([todo],DATEADD(CALENDARIO[Date],-1,YEAR))
SAMEPERIODLASTYEAR:
Devuelve una tabla que contiene una columna de fechas desplazadas un año atrás a partir de las fechas de la columna datos especificada, en el contexto actual.
ejemplo
importe_anterior = CALCULATE([todo],SAMEPERIODLASTYEAR(CALENDARIO[Date]))
TOTALYTD:
Evalúa el valor de año a fecha de la expresion en el contexto actual.
TOTALYTD(<expression>,<dates>[,<filter>][,<year_end_date>])
ejemplo
TOTAL_AÑO = TOTALYTD([todo],CALENDARIO[Date])
Tambien puedes hallar el total de trimestres y mes con las formulas: TOTALMTD Y TOTALQTD.
PARA PONER COMPARAR UN AÑO CON OTRO PUEDES HACER LOS SIGUIENTES CALCULOS
TOTAL_AÑO_ACTUAL = CALCULATE([todo],CALENDARIO[AÑO]=2025)
AÑO PASADO = CALCULATE([todo],CALENDARIO[AÑO]=2024)
ELEGIR MES DE LA TABLA DE FECHAS Y PONER UN GRAFICO DE LINEAS
FORMULAS DAX
SWITCH
Evalúa una expresión con una lista de valores y devuelve una de varias expresiones de resultado posibles.
Esta función se puede usar para evitar tener varias instrucciones IF anidadas.
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
CATEGORIA = SWITCH(TRUE(),Hoja5[SUELDO]>1400,"❤❤❤",Hoja5[SUELDO]>700,"❤❤","❤")
TRUE
Devuelve el valor lógico TRUE.
TRUE()
FALSE
DATE(<year>, <month>, <day>)
DATE(<year>, <month>, <day>)
DISTINCTCOUNT
Cuenta el número de valores distintos de una columna.
DISTINCTCOUNT(<column>)
DISTINTOS = DISTINCTCOUNT(Hoja5[CATEGORIA])
COUNTX
Cuenta el número de filas que contienen un valor no en blanco o una expresión que se evalúa como un valor no en blanco, al evaluar una expresión sobre una tabla.
COUNTX(<table>,<expression>)
CALENDAR
Devuelve una tabla con una sola columna denominada "Date" que contiene un conjunto contiguo de fechas.
El intervalo de fechas es desde la fecha de inicio especificada hasta la fecha de finalización especificada, inclusive de esas dos fechas.
CALENDAR(<start_date>, <end_date>)
DATE
Devuelve la fecha especificada en formato datetime.
DATE(<year>, <month>, <day>)
RELATED
Devuelve un valor relacionado de otra tabla.
RELATED(<column>)
SUMA = CALCULATE(SUM(VENTAS[CANTIDAD]),FILTER(VENTAS,VENTAS[CANAL_KEY]="CV-001"))
FUNCIONES
RANKX:NOS PERMITE HACER UN RANKING
Devuelve la clasificación de un número en una lista de números para cada fila del argumento table.FORMULAS DE CONTAR
COUNT:
Cuenta el número de filas de la columna especificada que contienen valores que no están en blanco.
COUNT(<column>)
EJEMPLO:
CONTAR = COUNT(RESUMEN[PRECIO])
COUNTA:
Cuenta el número de filas de la columna especificada que contienen valores que no están en blanco.
COUNTA(<column>)
EJEMPLO:
CUENTA = COUNTA(Hoja5[ARTICULO])
COUNTBLANK
Cuenta el número de celdas en blanco de una columna.
COUNTBLANK(<column>)
CUENTAA = COUNTBLANK(Hoja1[NOMBRE])
CALCULATE:
Evalúa una expresión en un contexto de filtro modificado.
CALCULATE(<expression>[, <filter1> [, <filter2> [, …]]])
EJEMPLO
CONTARFE = COUNTROWS(Hoja2)
CONTAREX = CALCULATE([CONTARFE],Hoja2[CIUDAD]="BUENOS AIRES" || Hoja2[TIPO]="GASFITERIA")
CREAR TABLAS
PODEMOS CREAR UNA NUEVA TABLA EN LA PESTAÑA DE MODELADO, CON LA FORMULA DE FILTER, ASI TENDREMOS UNA TABLA SOLO CON LOS DATOS QUE QUEDAMOS FILTRADOS.
EJEMPLO
RESUMEN = FILTER(Hoja5,Hoja5[CANTIDAD]>4)
COUNTROWS
La función COUNTROWS cuenta el número de filas de la tabla especificada o en una tabla definida por una expresión.
COUNTROWS([<table>])
Puede usarse con la funcion CALCULATE
EJEMPLO:
Medida 2 = CALCULATE([Medida 3],Hoja5[COD_CLIENTES]="id_c00
FORMULAS DE TEXTO
CONCATENATE:
Combina dos cadenas de texto en una cadena de texto.
TAMBIEN PPODEMOS USAR EL COMANDO "&"
CONCATENATE(<text1>, <text2>)
SOLO PERMITE PONRER 2 TEXTOS
LEFT: Devuelve el número especificado de caracteres desde el inicio de una cadena de texto.
LEFT(<text>, <num_chars>)
RIGHT: devuelve el último carácter o caracteres de una cadena de texto, en función del número de caracteres que especifique.
RIGHT(<text>, <num_chars>)
LEN: Devuelve el número de caracteres de una cadena de texto.
LEN(<text>)
LOWER: Convierte todas las letras de una cadena de texto en minúsculas.
LOWER(<text>)
REPLACE: reemplaza parte de una cadena de texto, en función del número de caracteres que especifique, por una cadena de texto diferente.
REPLACE(<old_text>, <start_num>, <num_chars>, <new_text>)
REPT: Repite el texto un número determinado de veces.
REPT(<text>, <num_times>)
SUBSTITUTE:Reemplaza el texto existente por texto nuevo en una cadena de texto.
SUBSTITUTE(<text>, <old_text>, <new_text>, <instance_num>)
TRIM: Quita todos los espacios del texto, excepto los espacios únicos entre palabras.
TRIM(<text>)
UPPER:Convierte una cadena de texto en todas las letras mayúsculas.
UPPER (<text>)
VISUALIZACION DE TABLA Y MATRIZ
TABLA:
UNA TABLA ES UNA CUADRÍCULA QUE CONTIENE DATOS RELACIONADOS EN UNA SERIE LÓGICA DE FILAS Y COLUMNAS.
UNA TABLA TAMBIÉN PUEDE CONTENER ENCABEZADOS Y UNA FILA PARA LOS TOTALES.
LAS TABLAS FUNCIONAN BIEN CON COMPARACIONES CUANTITATIVAS EN LAS QUE ESTÁ MIRANDO MUCHOS VALORES PARA UNA ÚNICA CATEGORÍA.
MATRIZ:
ES UN ELEMENTO VISUAL QUE TIENE EL FORMATO DE UNA TABLA DINAMICA DE EXCEL
PUDIENDO ORDENAR, AGRUPAR Y HACER CALCULOS MOVIENDO LAS COLUMNAS
FORMATO CONDICIONALES:
SE REALIZAN EN LA MATRIZ EN EL FORMATO DE OBJETO VISUAL EN EL APARTADO DE ELEMENTOS DE CELDA
HAY DE VARIOS TIPOS:
COLOR DE FONDO
COLOR DE FUENTE
BARRAS DE DATOS
ICONOS
PRESIONAMOS EN FX Y PODEMOS CONFIGURAR LOS FORMATOS CONDICIONALES
GRAFICO MEDIDOR:
EN LA VISTA DE INFORMA ESTA EL GRAFICO MEDIDOR Y PODEMOS CONFIGURAR EN FORMATO VISUAL
EJE MEDIDOR
PODEMOS COLOCAR
MINIMO: EL VALOR MINIMO REQUERIDO
MAXIMO: POR LO GENERAL EL MAXIMO DE ELEMENTOS A EVALUAR, POR EJEMPLO MAYOR CANTIDAD
DESTINO: EL VALOR DE REFERENCIA QUE QUEREMOS DEJAR COMO SEÑAL EN EL GRAFICO
GRAFICO TREEMAP:
LOS GRÁFICOS DE RECTÁNGULOS MUESTRAN LOS DATOS JERÁRQUICOS COMO UN CONJUNTO DE RECTÁNGULOS ANIDADOS.
CADA NIVEL DE LA JERARQUÍA ESTÁ REPRESENTADO POR UN RECTÁNGULO DE COLOR LLAMADO NODO DE RAMA.
CADA RAMA CONTIENE RECTÁNGULOS MÁS PEQUEÑOS DENOMINADOS NODOS DE HOJA . POWER BI USA EL VALOR DE MEDIDA PARA DETERMINAR EL TAMAÑO DEL RECTÁNGULO PARA LAS RAMAS Y HOJAS.
FUNCIONES IF EN DAX:
Comprueba una condición y devuelve un valor cuando es TRUE; de lo contrario, devuelve un segundo valor.
SINTAXIS:
IF(<logical_test>, <value_if_true>[, <value_if_false>])
PODEMOS AGREGAR NUEVA COLUMNA Y COLOCAR LA FORMULA
ITEM = IF(Hoja1[CANTIDAD]>70,"ALTA",IF(Hoja1[CANTIDAD]>50,"INTERMEDIA","BAJA"))
Son un conjunto de herramientas de programación que se utilizan en Power BI, Analysis Services y Power Pivot para realizar cálculos complejos y crear medidas y columnas calculadas dentro de modelos de datos. Estas funciones permiten acceder a información, manipular datos y realizar cálculos sofisticados, como promedios, sumas condicionales, análisis de tiempo y funciones financieras.
SUM(TABLA[COLUMNA])
SUMX(TABLA, EXPRESION]
EJEMPLO:
TOTAL = SUMX(Hoja1,Hoja1[CANTIDAD]*Hoja1[CANTIDAD])
Las funciones MAX y MIN se utilizan para encontrar los valores máximo y mínimo, respectivamente, en Power BI.
MAX(TABLA[COLUMNA])
MIN(TABLA[COLUMNA])
AVERAGE(TABLA[COLUMNA])
FILTER(TABLA[FILTRO]
CALCULATE(EXPRESION,FILTRO)
CALCULATE(MEDIDA / FUNCION, MEDIDA / COLUMNA)
EJEMPLO
MEDIDA = CALCULATE([TOTAL],FILTER(Hoja1,[TOTAL]>4000))
MEDIDA2= CALCULATE([TOTAL],FILTER(Hoja1,[PAIS]="PERU"))