El título parece un tanto complicado, pero con un par de pasos se resuelve el planteamiento. Para ser mas específicos: mi lector necesita armar una tabla dinámica cuyo origen sea una base de datos Access. Hasta aquí todo bien, pero le agrega un condimento excelente para levantar un nuevo post: dicha base de datos se encuentra alojada en la web, en un servicio de hosting.
Esta consulta es realmente muy buena y nos servirá de mucho, por que de esta forma integramos aplicaciones de escritorio con archivos alojados en la "cloud", lo cual está tan de moda por estos días, permitiéndonos una portabilidad muy grande en nuestras aplicaciones.
Como primer medida crearemos una tabla en nuestra base de datos, Access, y la guardaremos. Luego, con algún buen cliente FTP (como por ejemplo Filezilla) subiremos ese archivo .mdb al servidor, en este caso un servicio de hosting. Toda vez realizada esta tarea, ya contamos con nuestros datos en Internet.
[+/-] Ver el resto / Ocultar
hace años que utilizo Filezilla como cliente ftp para intercambiar archivos entre mi ordenador y el servicio de hosting. Tiene una performance impecable.
Luego de los pasos anteriores, nos vamos a Excel. Insertaremos una tabla dinámica, como lo hacemos comúnmente, prestando especial atención a las imágenes que siguen, dado que el secreto está en el tipo de conexión que seleccionemos.
seleccionamos "utilice una fuente de datos externa", ya que los registros no se encuentran dentro de Excel. Clickeamos en "elegir conexión"
ahora damos en "examinar en busca de mas", dado que la opción que necesitamos no se encuentra en la lista que nos provee el formulario.
otro mas.... ahora hacemos click en "nuevo origen"
selecionamos la tercer opción y presionamos "siguiente"
ahora optamos por "MS Access Database". Siguiente
el asistente nos pide que seleccionemos el archivo... pero no está en nuestro equipo. así que ahora vamos al botón "Red"
y seguimos.... ahora clickeamos sobre el link "conectarse a un sitio web..." en la parte inferior del formulario. no se aburran... vale la pena.
inicia el asistente. como siempre, las siempre útiles aclaraciones de Microsoft.
presionamos en "siguiente"
ingresamos la dirección del sitio en donde tenemos alojada nuestro archivo .mdb. Ojo: ftp y no http, tal cual se muestra en la imagen.
quitamos la marca de "iniciar sesión ...." e ingresamos nuestro nombre de usuario.
le damos algún nombre para identificarla mejor.
llegamos al fin (por fin) de los tantos formularios con los cuales tratamos. Dejamos la casilla de verificación seleccionada y damos en "finalizar".
y que tenemos acá? sencillo: se abrió el explorador de windows, quien ahora oficia de cliente ftp. en el panel izquierdo observen que está creada la conexión "MiEjemploEnExcel" y, en el panel derecho, todas las carpetas que conforman el sitio web. Un Lujo. Cerramos el explorador.
Bueno, ya tenemos nuestra conexión ftp creada. Ahora cerramos todos los formularios presionando en cancelar, hasta volver al que muestro en la tercer imagen del presente post, "Selecciona archivos de origen de datos". Desde ahí (puede ser que necesitemos presionar F5 para refrescar los directorios existentes) buscaremos la recientemente creada conexión, y navegaremos hasta encontrar el archivo .mdb que allí subimos al comienzo del ejercicio:
ahí está mi base de datos. perfecto. doble click sobre ella.
como tengo mi servidor bien protegido, ahora debo ingresar nombre de usuario y contraseña.
si, ya tengo la conexión !!!!!!!!!!!
Ahora damos en aceptar y listo.
y obviamente Excel se está comunicando perfectamente y todos los registros de mi base de datos en la web ahora se encuentran resumidos y analizados por una de las herramientas mas poderosas: las tablas dinámicas.
Para hacer un trabajo mas completo, nos vamos a la cinta de opciones, pestaña "datos". haciendo click sobre "conexiones":
Esto llamará a un formulario que nos permitirá configurar varios aspectos prácticos:
personalizo cada cuanto se deben actualizar los datos. un lujo.
Listo el "poyo". Habrán observado nuevamente como Excel no tiene límites, permitiéndonos acceder a practicamente cualquier origen de datos.... esté donde esté.
Cabe aclarar que los primeros intentos de conexión pueden ser fallidos. Pude solucionarlos "navegando" por el explorador de windows hasta el archivo de access, y abriéndolo. Luego cerramos todo (todo aquello que no sea Excel) e intentamos nuevamente. Funciona.
Muy chimbo
ResponderEliminarjajaja, la verdad que comentarios como este... bien podría borrarlos, pero me divierten. si mal no recuerdo esa palabra es venezonala, y hace referencia a algo falso, de mal gusto. ¿no?
ResponderEliminar¿ y mi ejemplo sobre tablas dinámicas es "muy chimbo ? jajajaja, jajaja, sinceramente me has hecho reir bastante.
de todas formas, gracias por tu entrada y el tiempo dedicado a ella.
un abrazo.
hola, excelente pagina web, desde el estilo excel, único en la red hasta los topicos que abarcas en tus tutoriales. Mi pregunta es mas o menos simple, excel me permite extraer datos de tablas insertas en paginas Web desde la opcion "Datos->Desde Web", esto te selecciona toda la tabla que tu deceses pero en mi caso en particular requiero solo algunos de estos datos de la tabla, entonces mi pregunta es... Como puedo rescastar solo algunos datos de una tabla de la Web y si esto se puede hacer con macros.
ResponderEliminarTe estaré eternamente agradecido.
hola J, muchas gracias x tus palabras. en efecto, se puede hacer lo que necesitas. es un tanto complicado, ya que (mediante macros) hay que leer el código fuente de la página web y solo extraer el dato respectivo. te armo un ejemplo y aviso aqui mismo cuando lo tenga listo.
ResponderEliminarsi te parece bien, enviame a la dirección de correo que figura al pié del formulario el sitio y que dato en concreto querés, así trabajo sobre eso. luego en mi post lo reemplazo por otro cualquiera.
estimado J: te dejo el link a la entrada que levanté con la consulta que me efectuaras. gracias de nuevo x tu mensaje.
ResponderEliminarhttp://damianexcel.blogspot.com/2011/04/leer-codigo-de-una-pagina-web-desde.html