Power Query: Sentencia SI – SI anidados y condiciones múltiples
En Power Query de Excel, la instrucción SI es una de las funciones más populares para evaluar una condición y devolver un valor específico según si el resultado es VERDADERO o FALSO. Presenta algunas diferencias respecto a la función SI de Excel. En este tutorial, te mostraremos la sintaxis de esta instrucción SI, junto con ejemplos sencillos y avanzados.
Sintaxis básica de la sentencia SI en Power Query
Sentencia SI de Power Query mediante una columna condicional
Sentencia SI de Power Query escribiendo el código M
Sintaxis básica de la sentencia SI en Power Query
En Power Query, la sintaxis es:
- prueba_lógica: La condición que deseas evaluar.
- valor_si_verdadero: El valor que se devuelve si el resultado es VERDADERO.
- valor_si_falso: El valor que se devuelve si el resultado es FALSO.
En Power Query de Excel, existen dos formas de crear este tipo de lógica condicional:
- Utilizar la función Columna condicional en algunos escenarios básicos;
- Escriba código M para escenarios más avanzados.
En la siguiente sección, presentaré algunos ejemplos prácticos del uso de esta sentencia SI.
Sentencia SI de Power Query mediante una columna condicional
Ejemplo 1: Sentencia SI básica
Aquí te explico cómo utilizar esta sentencia SI en Power Query. Por ejemplo, tengo el siguiente informe de productos: si el estado del producto es Antiguo, se aplica un descuento del 50 %; si el estado del producto es Nuevo, se aplica un descuento del 20 %, tal como se muestra en las siguientes capturas de pantalla.

1. Seleccione la tabla de datos en la hoja de cálculo y, a continuación, en Excel 2019 y Excel 365, haga clic en Datos > Desde tabla o rango. Consulte la captura de pantalla:

Nota: En Excel 2016 y Excel 2021, haga clic en Datos>Desde tabla, consulte la captura de pantalla:

2. A continuación, en la ventana abierta del Editor de Power Query, haga clic en Agregar columna > Columna condicional. Consulte la captura de pantalla:

3. En el cuadro de diálogo emergente Agregar columna condicional, realice las siguientes operaciones:
- Nombre de la nueva columna: Introduzca un nombre para la nueva columna;
- A continuación, especifique los criterios que necesite. Por ejemplo, especificaré Si Estado es igual a Antiguo, entonces 50 %; si no, 20 %.
- Nombre de columna: La columna frente a la que evaluará su condición SI. Aquí seleccione Estado.
- Operador: Lógica condicional que se utilizará. Las opciones variarán en función del tipo de datos de la columna seleccionada.
- Texto: empieza por, no empieza por, es igual a, contiene, etc.
- Números: igual a, distinto de, mayor o igual que, etc.
- Fecha: es anterior a, posterior a, igual a, distinta de, etc.
- Valor: El valor específico con el que se compara su evaluación. Junto con el nombre de columna y el operador, forma una condición.
- Salida: El valor que se devolverá si se cumple la condición.
- Si no: otro valor que se devolverá cuando la condición sea falsa.

4. A continuación, haga clic en el botón Aceptar para volver a la ventana del Editor de Power Query. Ahora se ha añadido una nueva columna de Descuento. Consulte la captura de pantalla:

5. Si desea dar formato a los números como porcentaje, simplemente haga clic en el icono ABC123 desde la cabecera de la columna de Descuento y seleccione Porcentaje según lo necesite. Consulte la captura de pantalla:

6. Por último, haga clic en Inicio > Cerrar y cargar > Cerrar y cargar para cargar estos datos en una hoja de cálculo nueva.

Ejemplo 2: Sentencia SI compleja
Con la opción Columna condicional, también puede insertar dos o más condiciones en el cuadro de diálogo Agregar columna condicional. Siga estos pasos:
1. Seleccione la tabla de datos y vaya a la ventana del Editor de Power Query haciendo clic en Datos > Desde tabla o rango. En la nueva ventana, haga clic en Agregar columna > Columna condicional.
2. En el cuadro de diálogo emergente Agregar columna condicional, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- Especifique el primer criterio en el primer campo de criterios y, a continuación, haga clic en el botón Agregar cláusula para añadir tantos campos de criterios como necesite.

3. Tras finalizar los criterios, haga clic en el botón Aceptar para volver a la ventana del Editor de Power Query. Ahora obtendrá una nueva columna con el resultado que necesita. Vea la captura de pantalla:

4. Por último, haga clic en Inicio > Cerrar y cargar > Cerrar y cargar para cargar estos datos en una hoja de cálculo nueva.
Sentencia SI de Power Query escribiendo el código M
Normalmente, la columna condicional resulta útil en algunos escenarios básicos. A veces, es posible que necesite utilizar varias condiciones con lógica Y u O. En ese caso, debe escribir código M dentro de una columna personalizada para escenarios más complejos.
Ejemplo 1: Instrucción if básica
Tomando como ejemplo el primer conjunto de datos, si el estado del producto es Antiguo, se muestra un descuento del 50 %; si el estado del producto es Nuevo, se muestra un descuento del 20 %. Para escribir el código M, proceda de la siguiente manera:
1. Seleccione la tabla y haga clic en Datos > Desde tabla o rango para abrir la ventana del Editor de Power Query.
2. En la ventana abierta, haga clic en Agregar columna > Columna personalizada. Vea la captura de pantalla:

3. En el cuadro de diálogo Columna personalizada que aparece, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- A continuación, introduzca esta fórmula: si [Estado] = «Antiguo» entonces "50 %" si no "20 %" en el cuadro de fórmula de columna personalizada formula.

4. A continuación, haga clic en Aceptar para cerrar este cuadro de diálogo. Ahora obtendrá el siguiente resultado según sus necesidades:

5. Por último, haga clic en Inicio > Cerrar y cargar > Cerrar y cargar para cargar estos datos en una hoja de cálculo nueva.
Ejemplo 2: Instrucción if compleja
Normalmente, para probar subcondiciones, puede anidar varias instrucciones if. Por ejemplo, tengo la siguiente tabla de datos. Si el producto es “Vestido”, se aplica un descuento del 50 % sobre el precio original; si el producto es “Jersey” o “Sudadera”, se aplica un descuento del 20 % sobre el precio original; y los demás productos conservan su precio original.

1. Seleccione la tabla de datos y haga clic en Datos > Desde tabla o rango para abrir la ventana del Editor de Power Query.
2. En la ventana abierta, haga clic en Agregar columna > Columna personalizada. En el cuadro de diálogo Columna personalizada que aparece, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- A continuación, introduzca la siguiente fórmula en el cuadro de fórmula de columna personalizada formula.
- = si [Producto] = «Vestido» entonces [Precio] * 0,5 si no
si [Producto] = «Jersey» entonces [Precio] * 0,8 si no
si [Producto] = «Sudadera» entonces [Precio] * 0,8
si no [Precio]

3. A continuación, haga clic en el botón Aceptar para volver a la ventana del Editor de Power Query y obtendrá una nueva columna con los datos que necesita; vea la captura de pantalla:

4Por último, haga clic en Inicio>Cerrar y cargar>Cerrar y cargarpara cargar estos datos en una hoja de cálculo nueva.
La función O realiza varias pruebas lógicas y devuelve VERDADERO si al menos una de ellas es verdadera. Su sintaxis es:
Supongamos que tengo la siguiente tabla. Ahora quiero añadir una nueva columna que muestre lo siguiente: si el producto es “Vestido” o “Camiseta”, la marca será “AAA”; para el resto de productos, la marca será “BBB”.

1. Seleccione la tabla de datos y haga clic en Datos>Desde tabla o rangopara abrir la ventana del Editor de Power Query.
2En la ventana abierta, haga clic en Agregar columna>Columna personalizadaEn el cuadro de diálogo Columna personalizadaque aparece, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- A continuación, introduzca la siguiente fórmula en el cuadro de fórmula de columna personalizada.
- = si [Producto] = "Vestido" o [Producto] = "Camiseta" entonces "AAA"
si no «BBB»

3. A continuación, haga clic en Aceptar para volver a la ventana del Editor de Power Query y obtendrá una nueva columna con los datos que necesita; vea la captura de pantalla:

4Por último, haga clic en Inicio>Cerrar y cargar>Cerrar y cargarpara cargar estos datos en una hoja de cálculo nueva.
La lógica Y realiza varias pruebas lógicas dentro de una única instrucción if. Todas las pruebas deben ser verdaderas para que se devuelva un resultado verdadero. Si alguna de las pruebas es falsa, se devuelve un resultado falso. La sintaxis es:
Tomando los datos anteriores como ejemplo, quiero una nueva columna que muestre lo siguiente: si el producto es “Vestido” y el pedido supera los 300 €, se aplica un descuento del 50 % sobre el precio original; de lo contrario, se mantiene el precio original.
1. Seleccione la tabla de datos y haga clic en Datos>Desde tabla o rangopara abrir la ventana del Editor de Power Query.
2En la ventana abierta, haga clic en Agregar columna>Columna personalizadaEn el cuadro de diálogo Columna personalizadaque aparece, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- A continuación, introduzca la siguiente fórmula en el cuadro de fórmula de columna personalizada.
- = si [Producto] =«Vestido» y [Pedido] > 300 entonces [Precio]*0,5
si no [Precio]

3A continuación, haga clic en el botón.Aceptarpara volver a la ventana del Editor de Power Query, y obtendrá una nueva columna con los datos que necesita; vea la captura de pantalla:

4. Por último, debe cargar estos datos en una hoja de cálculo nueva haciendo clic en Inicio > Cerrar y cargar > Cerrar y cargar.
Sentencia SI con lógicas OR y AND
Muy bien, los ejemplos anteriores son fáciles de entender. Ahora, vamos a complicarlo un poco más: puede combinar las lógicas Y y O para formular cualquier condición que imagine. En este caso, puede usar paréntesis en la fórmula para definir reglas complejas.
Tomando también como ejemplo los datos anteriores, supongamos que deseas que una nueva columna muestre lo siguiente: si el producto es “Vestido” y su pedido supera las 300 unidades, o si el producto es “Pantalones” y su pedido supera las 300 unidades, entonces se muestra “A+”; en caso contrario, se muestra “Otro”.
1. Seleccione la tabla de datos y haga clic en Datos>Desde tabla o rangopara abrir la ventana del Editor de Power Query.
2En la ventana abierta, haga clic en Agregar columna>Columna personalizadaEn el cuadro de diálogo Columna personalizadaque aparece, realice las siguientes operaciones:
- Introduzca un nombre para la nueva columna en el cuadro de texto Nombre de la nueva columna;
- A continuación, introduzca la siguiente fórmula en el cuadro de fórmula de columna personalizada.
- =if ([Product] = «Dress» and [Order] > 300 ) o
([Producto] = «Pantalones» y [Pedido] > 300 )
entonces «A+»
si no «Otro»

3A continuación, haga clic en Aceptarpara volver a la ventana del Editor de Power Query, y obtendrá una nueva columna con los datos que necesita; vea la captura de pantalla:

4Por último, debe cargar estos datos en una hoja de cálculo nueva haciendo clic en Inicio>Cerrar y cargar>Cerrar y cargar.
En el cuadro de fórmula de la columna personalizada, puede utilizar los siguientes operadores lógicos:
- = : Igual a
- : Distinto de
- > : Mayor que
- >= : Mayor o igual que
- < : Menor que
- <= : Menor o igual que
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos