La respuesta es afirmativa y en esta entrada mostraré cómo hacerlo.
Empecemos por recordar que una de las herramientas para extraer datos de fuentes externas en Excel es el MS Query
Primer paso: crear la consulta en el MS Query
Antes de empezar el proceso hemos definido que las celdas B1:B3 contendrán los parámetros.
Para nuestro ejemplo usaremos la base de datos Northwind (el archivo no viene con el paquete de Office 2010).
Elegimos la tabla de la base de datos (en nuestro caso: Invoices) y los campos que queremos importar a la hoja de Excel
Apretamos “next” hasta que llegamos a la última etapa (Finalizar) y allí elegimos la opción “ver datos en MS Query”
Segundo paso: agregar parámetros a la consulta
Primero debemos hacer visible el área de criterios
Para ingresar criterios en forma de parámetros debemos usamos los paréntesis “[“ y “]” de esta manera
En la línea de Criterios ingresamos el campo, en nuestro ejemplo usamos Country (país) y Shipped Date (fecha de despacho). En la línea de Valor ponemos
[ingrese Pais] para hacer la consulta según país
Between ]fecha de inicio] and [fecha de cierre] para definir el rango de fechas.
Tercer paso: transferir los resultados a Excel
Al hacerlo se abre un diálogo para ingresar los valores de los parámetros; a esta altura del proceso no es necesario ingresar ningún valor, sencillamente apretamos Aceptar
En la hoja de Excel elegimos la ubicación de la tabla que será importada
Cuarto paso: definir las celdas de los parámetros en Excel
Antes de finalizar el proceso apretamos el botón Propiedades
Luego activamos la pestaña Definición para acceder al botón Parámetros
En el formulario que se abre definimos la opción “Tomar el valor de la siguiente celda” y también marcamos la opción “Actualizar automáticamente…”
Volvemos a este paso para cada uno de los parámetros y apretamos Aceptar para los siguientes tres pasos
Excel importa la tabla filtrada por los criterios que hemos definido en B1:B3
Como hemos elegido la opción de actualizar automáticamente al cambiar los valores en la celdas del rango B1:B3, tenemos una consulta que actúa dinámicamente