Si llevas tiempo usando Excel y crees que ya conoces Power Query, este post te va a cambiar la perspectiva. Estas seis funciones existen, funcionan y la mayoría de usuarios nunca las ha tocado.
No creía que Power Query pudiera hacer estas 6 cosas
🎁 Descarga el archivo de ejemplo
Escribe tu correo electrónico para recibir gratis el archivo para practicar.
*Al enviar mi correo electrónico, acepto recibir noticias y ofertas. Puedo darme de baja en cualquier momento.
1. Combinar todos los archivos de una carpeta automáticamente
Aquí hay una diferencia importante que casi nadie menciona: no es lo mismo combinar archivos CSV que archivos Excel.
Con archivos CSV, el proceso es directo: Datos → Obtener datos → De un archivo → De una carpeta, pegas la ruta, eliges Combinar y cargar y Power Query une todo automáticamente.
Con archivos Excel el proceso tiene pasos adicionales porque tienes que entrar al contenido de cada archivo para detectar qué hay dentro (hojas, tablas, nombres definidos). El flujo es: quedarte solo con la columna Content, insertar una columna personalizada con Excel.Workbook([Content]), expandir, filtrar solo los elementos de tipo Sheet, extraer la columna Data, promover encabezados y filtrar los encabezados repetidos que aparecen entre archivos.
Más pasos, sí. Pero una vez configurado, cualquier archivo nuevo que pongas en esa carpeta se incluye al actualizar.
2. Cambiar el origen de datos sin rehacer la consulta
Cuando cambias la carpeta de origen, no tienes que repetir todo el proceso desde cero. En el panel Consultas y conexiones, das clic derecho en la consulta → Editar → en el paso Origen das clic en el engrane → cambias la ruta → aceptas. Eso es todo.
3. Tomar la ruta de una celda de Excel (sin entrar a editar la consulta)
Este ya es un paso más avanzado. Puedes asignar un nombre definido a una celda (por ejemplo, Ruta), y en el Editor avanzado de Power Query declarar una variable que lea ese nombre definido:
let
MiCarpeta = Excel.CurrentWorkbook(){[Name="Ruta"]}[Content]{0}[Column1],
Origen = Folder.Files(MiCarpeta),
...
Para no tener que escribir la ruta a mano en la celda, puedes agregar una macro con un cuadro de diálogo para elegir carpeta y que la ruta se ponga automáticamente en esa celda. Guardas el archivo como .xlsm, asignas la macro a un ícono y listo — solo eliges carpeta y actualizas la consulta.
4. Crear columnas con base en ejemplos
Esta es la función que “adivina” lo que quieres hacer. En Power Query: Agregar columna → Columna a partir de los ejemplos → A partir de la selección.
Escribes un ejemplo del resultado que esperas en la primera celda, presionas Ctrl+Enter, escribes otro ejemplo en la segunda celda y Power Query detecta el patrón. Sirve para extraer texto, separar valores, combinar columnas y más. Muy similar al Relleno rápido de Excel, pero dentro de la consulta.
5. Modificar un paso intermedio sin rehacer todo
Cuando tienes varios pasos aplicados y necesitas cambiar uno del medio, no tienes que borrar todo y empezar. En el panel Pasos aplicados, das clic en el engrane del paso que quieres modificar, haces el cambio y aceptas. Power Query recalcula desde ese punto en adelante.
6. Ejecutar consultas SQL directamente en Power Query
Si te conectas a una base de datos SQL Server y traes una tabla completa con millones de filas, la consulta puede volverse lenta o incluso detenerse. La solución es mandar la consulta SQL desde Power Query en lugar de traer todo y filtrar después.
Al conectarte: Datos → Obtener datos → De una base de datos → De SQL Server, en Opciones avanzadas puedes escribir directamente la sentencia SQL. Por ejemplo:
sql
SELECT * FROM Sales.SalesOrderDetail WHERE LineTotal > 10000
En lugar de traer 121,000 filas y luego filtrar, traes directamente las 700 que necesitas. Más eficiente, menos tiempo de espera.
¿Quieres practicar esto con estructura y seguimiento?
En Deztaca tienes cursos completos de Power Query donde trabajas con archivos reales, paso a paso, a tu ritmo. Si quieres aprender Power Query de forma ordenada y no en pedazos sueltos, ese es el lugar: deztaca.com
