Si tenemos la suerte de poder utilizar versiones más recientes de Excel que la 2010 es posible que esta entrada pueda resultaros poco interesante. Sin embargo, hay organizaciones en las que la frecuencia de actualización del software es una dimensión lentamente cambiante :)
Podeis descargaros la última versión de Power Query, que es perfectamente compatible con Excel 2010, para trabajar con modelado de datos “de escritorio” o ETL self-service. Encontraremos que, la hora de cargar el resultado de nuestro script M, no disponemos de un botón que automatice dicha tarea como si lo hay en Excel 2013 o superior:
Entonces, ¿cómo hacer para llevar a modelos Power Pivot datos cargados a través de Power Query directamente? sin pasar por una tabla Excel (con sus consiguientes limitaciones)
El truco es muy fácil: en lugar de marcar una opción en el cuadro de diálogo de Power Query debemos hacer un proceso manual de 3 pasos:
1.
Una vez terminemos el tratamiento de los datos en Power Query guardamos los cambios y seleccionamos la opción de ‘Crear conexión de datos’, sin llevarlo a una tabla Excel. En el ejemplo con el que vamos a desarrollar esta entrada, la consulta Power Quey a integrar en el modelo Power Pivot es CTL_Processes. Como veréis en la siguiente imagen, en el libro Excel dispongo de dos consultas creadas como conexión:
2.
En la cinta de Datos, vamos a la lista de conexiones existentes en el libro y accedemos a las propiedades de la consulta Power Query en cuestión
En el cuadro de dialogo de propiedades de la conexión, seleccionamos la cadena de conexión y la copiamos, tendrá una composición similar al siguiente
Si os pasa como a mi y no entendéis nada de lo que figura como valor en el atributo Properties de la cadena de conexión no pasa nada, podemos continuar. Lo importante es que os fijéis en el Provider: Microsoft.MashUp.OleDb.1, que viene a ser el provedor Power Query y más importante aún es que el proveedor es OleDB.
Por tanto, finalizamos este paso seleccionando la cadena de conexión completa (todo lo marcado con fondo rojo) y copiándola.
3.
Tercer y último paso. Abrimos el modelo PowerPivot y seleccionamos un nuevo origen de datos de tipo ODBC/OLEDB
Para la cadena de conexión suministraremos la copiada en el paso anterior, además de un nombre para la conexión:
A partir de aquí podemos escribir la consulta o seleccionar la query asociada con esa cadena de conexión. Muy fácil cuando se sabe, pero resulta poco intuitivo si no se conoce el método.