lunes, 19 de marzo de 2007

Tutorial para consultar una base de datos desde excel, pasando parametros

Tutorial para consultar una base de datos desde excel

Cuando hacia consultas a BBDD desde excel, una de las principales necesidades, por lo menos para mi fue pasarle por parámetro el valor de una celda a Microsoft Query, esto a partir de las ultimas versiones del paquete Microsoft Oficce ya esta solucionado y voy a tratar de explicarles rapidamente como se hace.

Les recomiendo que si no tienen conocimientos de administración de origenes de datos como ODBC, primero se informen sobre esto, no es complicado pero si indispensable para conectar Excel con Microsoft Query.

Bueno a la receta:

Abrimos una hoja nueva de Excel y nos vamos a Datos -> Obtener Datos Externos -> Nueva consulta de Base de Datos. En este paso puede pasar que necesitemos el CD de Oficce por que no tengamos instalados los componentes de Microsoft Query

Elegir un origen de datos

Si lo tenemos lo seleccionamos o podemos crear uno nuevo haciendo clic en <nuevo origen de datos> para crear uno nuevo le damos aceptar y nos pide:

- El nombre, por ejemplo Productos dado que vamos a consultar la tabla productos de la tabla de la BBDD Northwind que trae de ejemplo SQL server

- El proveedor de datos, en esta caso es Sql Server

- Conectar, ponemos el servidor y los datos de autenticación, IMPORTANTE ver las opciones para seleccionar la Base de Datos a la que queremos entrar ya que por defecto es la master y no hay tablas de usuario ahí (o no debería haber, si las tienes preocúpate ;)). Seleccionamos Northwind para nuestro ejemplo

Aparece el asistente para consultas, buscamos la tabla Products y seleccionamos todos los campos, seguimos con siguiente todas las pantallas hasta la ultima, y aca ponemos Ver los datos o modificar la consulta en Microsoft Query

Aquí esta el primer secreto, primero vemos que no este seleccionada la opcion Consulta Automatica que por defecto si lo esta.

Ademas hay que seleccionar el boton de Ocultar o mostrar criterios

Elegimos el campo SupplierID (proveedor) en Campos de Criterio en valor, esta el segundo secretito, poner alguna leyenda entre corchetes como por ejemplo [Escriba el Codigo de Proveedor]

Aqui los que conozcan algo de SQL se pueden hacer sus propias consultas, tan complejas como lo necesiten

Elegir Archivo -> Devolver los datos a Excel

Ahora le decimos que queremos situar los datos en $A$2, seleccionamos parámetros, elegimos la celda de donde tomara los datos, en este caso sera =Hoja1!$A$1, seleccionamos Actualizar automáticamente cuando cambie el valor, Aceptamos y listo

En principio no veremos ningun registro, pero prueben poniendo en la celda A1 un 2 por ejemplo y aparecen todos los productos del proveedor 2. Por si quedaron dudas, les dejo un video explicativo de mi autoria. Saluds