Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Refrescar todas las conexiones de datos al abrir un archivo

| 1 comentario

Esta macro nos va a ayudar a actualizar nuestro libro de trabajo, puesto que al abrir un libro nuevo éste puede tener conexiones externas de recursos de datos como web queries, conexiones PivotTable, etc. Y para nuestros proyectos queremos datos actuales, es por eso que esta macros nos va ha ser de mucha ayuda para obtener los datos actualizados (los cuales fueron importados externamente).

Primero, para poder demostrar mejor lo que realiza esta macros, necesito importar datos de un archivo o enlace externo. Para lo cual realizo los siguientes pasos:

  1. Voy al menú Datos, en la parte de "Obtener datos externos", le doy clic en "Desde Web".
  2.   Escribimos la dirección URL de donde queremos obtener los datos. Para mi ejemplo utilizare el siguiente: https://finance.yahoo.com/quote/GOOG/history?ltr=1
  3. Luego seleccionamos las tablas que queremos importar, en este caso seleccione la información histórica de precios.
  4. Hacemos clic en Importar y seleccionamos la celda donde va a comenzar a importarse los datos.

Aquí una imagen de referencia para importar los datos.

Importar Datos. Referencia

(Para mayor visualización de la imagen, hacer click en la misma)

Con los datos ya obtenidos, se pueden realizar modificaciones haciendo clic derecho en la celda donde se eligió comenzar a importar los datos y luego en modificar consulta. Además podemos ver que conexiones tenemos en nuestro libro haciendo clic Conexiones existentes en el menú Datos (debes seleccionar una celda que no contenga los datos importados para que se active el botón).

Ahora abrimos el Editor de VBA, y le damos clic en "ThisWorkBook", para activar su programador y escribimos el siguiente macro:

Private Sub Refresh ()

Workbooks(ThisWorkBook.Name).RefreshAll

End Sub

Nota: Digitamos ThisWorkbook debido a que sólo se ejecutará esta macros en este libro, mas no en el que esté activo.

Si al darle ejecutar o F5 notamos que nuestros datos no han sufrido cambio alguno, es debido a que nuestra macro actualiza los datos de un sitio externo y en este caso en este sitio web no hubo ninguna modificación de sus datos por lo que no apreciamos cambios. Esta macro nos será de mucha utilidad para mantener nuestros datos actualizados tales como precios, demandas, ventas, etc. Ahorrándonos mucho tiempo (lo que sería importar los datos nuevamente).

Aquí el archivo en excel con los datos y la macro

Refrescar todas las conexiones de datos al abrir un archivo

 

Un comentario

  1. Buenas tardes,

    Gracias por el articulo. En excel de mac me obliga a importar toda la pagina desde queries y luego al actualizar se me actualiza toda la información (incluso me vuelve a aparecer lo eliminado). Sabe cómo solucionarlo? muchas gracias de antemano.

    Saludos

Deja una respuesta

Los campos requeridos estan marcados con *.