Este es un problema que me surgió cuando estaba creando la tabla de dimensiones del modelo de datos en Power BI, con el objeto de crear un Dashboard para una Planta de Electrorefinación de Cobre. Es un problema que me pareció atractivo resolver en Excel, puesto que requiere realizar operaciones lógicas, lo cual es medido para certificarse como MO-201: Microsoft Excel Expert.

Utilicé las fórmulas SI, IZQUIERDA, DERECHA y O para la construcción de la fórmula compuesta. El código final para evaluar la calle dado el circuito y la sección es el siguiente:

=SI( O( [@Circuito] = "19"; [@Circuito] = "20" ); "Sur";
     SI(
         O( DERECHA( [@Sección]; 2 ) = "01";
            DERECHA( [@Sección]; 2 ) = "02";
            DERECHA( [@Sección]; 2 ) = "03";
            DERECHA( [@Sección]; 2 ) = "04";
            DERECHA( [@Sección]; 2 ) = "05";
           ); "Norte"; "Central"
        )
)

Las celdas están con referencia estructurada, dado que el rango de datos los tenía en formato de tabla.

En forma alternativa esto se podría realizar utilizando la fórmula CAMBIAR:

=CAMBIAR( VERDADERO();
 O(
    [@Circuito] = "19";
    [@Circuito] = "20"
   ); "Sur";
 O(
    DERECHA( [@Sección]; 2) = "01";
    DERECHA( [@Sección]; 2) = "02";
    DERECHA( [@Sección]; 2) = "03";
    DERECHA( [@Sección]; 2) = "04";
    DERECHA( [@Sección]; 2) = "05";
   ); "Norte";
 O(
    DERECHA( [@Sección]; 2) = "06";
    DERECHA( [@Sección]; 2) = "07";
    DERECHA( [@Sección]; 2) = "08";
    DERECHA( [@Sección]; 2) = "09";
    DERECHA( [@Sección]; 2) = "10";
   ); "Central"
)

Sin embargo, el código es más extenso. Esto porque hay que agregar la expresión lógica para evaluar los correlativos entre 06 y 10, y así devolver que pertenecen a la calle “Central” cuando sea verdadero. De lo contrario nos arrojaría un error.

Tags:

Agregar un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *