Forum Discussion
Convertir Fórmula de Excel que usa INDEX (INDICE) y MATCH (COINCIDIR)
Soy un novato en Power BI.
Tengo una hoja de excel (ODBC) que quiero convertir a Power BI, ya creé la tabla pero tengo una fórmula en Excel que no sé cómo convertirla a Power BI, utilizo las funciones INDEX y MATCH, pero cuando trato de hacer lo mismo en mi tabla como nueva columna no me aparece la función INDEX.
La fórmula que tengo busca la primera ocurrencia de mes y año en ColumnaFechas que tenga MONEDA = PES y después recupera el valor de ColumnaTipoCambio para multiplicarlo por MONTO , para obtener la columna SALDO
Esta es la fórmula de Excel:
SI(MONEDA= "PES", MONTO, MONTO*INDICE(ColumnaTipoCambio,COINCIDIR(1,(EXTRAE(FECHA,5,2)=EXTRAE(ColumnaFechas,5,2))*(IZQUIERDA(FECHA,4)=IZQUIERDA(ColumnaFechas,4))*(ColumnaMoneda="PES"),0)))
Y datos de ejemplo:
Num. | Nombre | Fecha | Moneda | Monto | T.C. | Saldo |
3001 | Prov1 | 20231231 | USD | 11050.4 | 1 | 190373.15 |
| 3001 | Prov1 | 20231231 | USD | 31162.61 | 1 | 536860.59 |
| 3005 | Prov2 | 20231206 | PES | 9048 | 17.22771595 | 9048 |
| 3005 | Prov2 | 20231231 | PES | 44118 | 16.89351846 | 44118 |
¿Cómo puedo crear la fórmula en una columna calculada en Power Bi? Estoy utiliando Direct Query para obtener los datos.
Gracias
2 Replies
- Syndicate_Admin
Administrator
Hola @Syndicate_Admin
Para hacerlo, deberá seguir algunos pasos:
1. Columna calculada para el año:
Año = AÑO ( [Fecha] )
2. Columna calculada para el mes:
Mes = MES ( [Fecha] )3. Columna calculada para el tipo de cambio:
Tipo de cambio =
VAR TargetYear = [Año]
VAR TargetMonth = [Mes]DEVOLUCIÓN
CALCULAR (
FIRSTNONBLANK ( Tabla[ExchangeTypeColumn] , 0 ) ,
FILTER ( Tabla, AÑO ( Tabla[Fecha] ) = TargetYear &&
MES ( Tabla[Fecha] ) = TargetMonth &&
Tabla[MONEDA] = "PES" ) , REMOVEFILTERS ( 'Tabla' ))
4. Columna calculada para el saldo:
Saldo = IF ( [MONEDA] = "PES" , [IMPORTE] , [IMPORTE] * [Tipo de cambio] )
Por favor, ajústelo / adáptelo y, con suerte, le ayudará o al menos le guiará a través del proceso.
Todo lo mejor.
Theo
- martipe1
Helper II
Gracias por la respuesta, asumo que lo que se tradujo como CALCULAR equivale a la función "CALCULATE", pero no sé qué función puede ser DEVOLUCIÓN.
¿Cómo poner la función en inglés sin que la traduzca?