Forum Discussion

martipe1's avatar
martipe1
Icon for Helper II rankHelper II
2 years ago

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.

NombreFechaMonedaMontoT.C.Saldo
 

3001

Prov120231231USD11050.41190373.15
3001Prov120231231USD31162.611536860.59
3005Prov220231206PES904817.227715959048
3005Prov220231231PES4411816.8935184644118
 

¿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

  • 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's avatar
      martipe1
      Icon for Helper II rankHelper 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?