Aunque parezca un error de ortografía, el título de la entrada es correcto.
Nos dedicaremos a explorar un poco a esta casi desconocida función de Excel (IMPORTARDATOSDINAMICOS() = GetPivotData en inglés). Aparte veremos pequeños consejos para elaborar "tableros de control", tan prácticos para nuestros proyecto.
Acorde con su nombre, esta función nos permitirá obtener datos que provengan de una Tabla Dinámica, la cual es desde siempre una de las herramientas mas poderosas con la que contamos en Excel.
Cuando trabajamos con grandes cantidades de datos la mayor preocupación es siempre como resumirlos y así lograr reportes que sean "analizables", y no un registro detrás del otro. Las Tablas Dinámicas nos permiten eso, mas aún teniendo en cuenta que no solo podemos obtener datos del propio Excel, si no de otras varias y distintas fuentes (access, txt, dbf, páginas web, etc, etc, etc).
Pero así y todo muchas veces el análisis de esos reportes resultantes se torna complicado "a simple vista".
Veamos la siguiente TD, en la cual se encuentran totalizadas las ventas de 4 sucursales en 4 zonas distintas del país:
[+/-] Ver el resto / Ocultar
El problema (y a pesar de tener un muy buen resúmen) es si necesitamos "cruzar" información: comparar las ventas de la sucursal ac-108 en la zona norte con la zona oeste de la sucursal ac-104 y, a la vez, con las ventas de la sucursal ac-103 en el este. De solo plantearlo uno empieza a mover los ojos por toda la tabla, intentando memorizar números y comparando el desempeño de cada unidad de negocios.
Sigamos. Antes de elaborar el informe final tendremos que darle un repaso a la función propuesta, descubriendo los argumentos que nos solicita:
=IMPORTARDATOSDINAMICOS(campoDeDatos; tablaDinámica;[campo1;elemento1];[campo2;elemento2];[campo3;elemento3];[campoN;elementoN])
Parece complicada pero no lo es: nos pide 2 argumentos obligatorios y los demás opcionales (que se encuentran entre llaves). Basados en nuestro ejemplo, empecemos:
campoDeDatos: sobre que campo realizaremos las acciones del cálculo. Si miramos la primer imagen observamos que es "importe", dado que sobre se efectúa la suma.
tablaDinamica: debemos indicar en que celda comienza la TD (A1, para este caso)
Bueno, esos son los obligatorios, demos un vistazo de lo que obtenemos:
bien: el total de la tabla dinámica resumido en una función, totalmente separado del origen de datos.
Si, ya se que tiene "sabor a poco", pero con los argumentos opcionales las cosas mejoran mucho, ya que a ese total lo podremos "parcializar" de acuerdo a los campos sucursal y zona. Sigamos.
La siguiente función nos devolverá las ventas de la sucursal ac-103:
=IMPORTARDATOSDINAMICOS("importe";A1;"sucursal";"ac-103")
Resalté en rojo los argumentos de [campo1;elemento1] para que vean lo sencillo que es:
["sucursal";"ac-103"]... y listo, ya tenemos totalizadas las ventas de esa sucursal mediante la función. La tabla nuestra da para mas, ya que aún podemos agregar otro campo: la zona.
=IMPORTARDATOSDINAMICOS("importe";A1;"sucursal";"ac-103";"zona";"norte")
Logrando:
Todo hasta aquí funciona correctamente. Hemos visto como pasarle correctamente los argumentos y que la función "filtre" la info de la tabla dinámica.
Pero a todo esto ¿para que quiero reflejar en una celda algo que ya tengo en la TD? Muy buena pregunta, y hacia allá vamos: el objetivo de esta entrada es crear "cuadros comparativos", diseñando algo así como un tablero de control, el cual potenciaremos con algunas funcionalidades de Excel 2010.
Si yo tengo la función:
=IMPORTARDATOSDINAMICOS("importe";A1;"sucursal";"ac-103";"zona";"norte")
Podría hacerla de la siguiente forma:
=IMPORTARDATOSDINAMICOS("importe";A1;"sucursal";C2;"zona";C3)
O sea que la fórmula dejaría de ser "fija" para completarse con los datos de la sucursal y zona de acuerdo a lo que el usuario ingrese en C2 y C3 respectivamente.
Tomando esto como consigna y colocando validación de datos en algunas celdas (para evitar que coloquen sucursales o zonas inexistentes), estoy en condiciones de hacer lo siguiente:
aquí ven como comparo las ventas de las 4 sucursales en la zona norte del país.
Como esa tabla tiene listas desplegables logradas con la validación de datos, podemos comenzar a jugar y cruzar los datos:
ventas en zonas norte y sur de las sucursales ac-105 y ac-103
Y de esta forma.... hasta el infinito, y mas allá.
Lo que antes nos hacía "mirar para todos lados", ahora lo pudimos resumir en una sencilla tabla que nos permitirá comparar sin complicaciones. ¿Vamos un poco mas allá?
Creemos un reporte que incluya información de varias tablas, agregando los minigráficos de Excel:
un sencillo pero efectivo tablero de control, que resume información y la presenta para un ulterior y mas eficaz análisis.
Excel es la mejor herramienta de análisis con la que contamos, sin lugar a dudas. Noten que esa tabla dinámica de la primer imagen puede traer datos de practicamente cualquier origen, concentrando así los resultados de cientos de miles de registros. A su vez los reducimos mas aún con la función que hemos visto, agregando minigráficos que visualmente potencian cualquier análisis que necesitemos realizar.
Y todo sin emplear ni una sola línea de código VBA. Suerte y espero que les sirva para sus proyectos.
Comentarios
Publicar un comentario