Crear una macro excel que me actualize los datos.

Saludos.
El problema principal que tengo es el siguiente: Estoy importando datos de una página web, pero estoy creando un reporte automático y necesito que estos datos se actualicen cada día a las 11:00 am.
Lo único que consigo es el menu de propiedades de rango de datos y actualizar datos cada "X" minutos, pero esto no me sirve, y no logro hacerlo a una hora determinada.
Existirá una macro que haga esto posible,¿?, ¿O sea se conecte a la página web y actualize los datos que yo tengo seleccionados en mi hoja excel a una hora?
Gracias.

1 respuesta

1
Respuesta de
Hola, claro que que es posible hacer lo que tu quieres con una macro, primero tenemos que generar la macro de tu importación de datos desde Web y luego ponemos las lineas de código para poder la hora a la que quieres que eso se realize.
Abre tu libro de excel, pulsas en Herramientas>Macros>Grabar nueva macro en la ventana que aparece le das un nombre a tu macro por ejemplo Actualiza_Base pulsas en aceptar y ahora todo lo que tua hagas se ira trasladando a lineas de código en VBA, pulsas en Datos>Obtener Datos Externos>Nueva Consulta Web en la ventana que se abre arriba en la barra de dirección pones la dirección de la página Web y pulsas en Ir cuando estés situado en ella marcas las tablas que quieres importar, y pulsas abajo en importar.
Cuando hayas echo esto y tengas los datos recogidos en tu hoja de Excel, pulsas nuevamente en Herramientas>Macros>Detener Grabación.
Ya tenemos la macro construida, si pulsas Alt+F11 se abrirá el editor de VBA y podrás ver tu macro generada.
Si en algún paso te has confundido borra la macro y vuelves a crear otra nueva y vuelves a grabarla.
Para probarla, borras todos los datos importados y abres el editor de VBA cuando estés situado en tu macro pulsas arriba en ejecutar (es un icono de play como en los reproductores de audio) si la macro funciona correctamente te importará los datos de forma automática.
Una vez echo esto, vamos a ponerlo de forma que se ejecute todos los días a las 11:00
Abres el Editor de VBA (ya sabes Alt+F11) te sitúas en la primera linea de tu macro que debería ser algo así, si seguiste el nombre del ejemplo:
Sub Actualiza_Base()
Pulsas ejecutar del teclado Intro para que las lineas bajen y te deje espacio encima para escribir nuevas lineas, ahora escribes esto:
Sub Auto_Open()
Sub Auto_Open()
Application.OnTime TimeValue("11:00"), "Actualiza_Base"
End Sub
____________________________________________________________
Se te habrá generado una linea que separan las dos macros, como esta que he puesto yo, ahora te explico lo que va a hacer, esta macro ejecutará tu macro a la hora que hemos puesto a las 11:00 a esa hora buscará la siguiente macro que hemos puesto Actuliza_Base que estará a continuación de esta, y como ya comprobastes se ejecuta correctamente, y actualizará tu base de datos. ¡OJO! Para que funcione después de todo debes de guardar los cambios, cerrar el Libro y volverlo a abrir, y tiene que estar abierto a esa hora aunque esté minimizado.
Haz todo lo que te dicho y me cuentas.
>Un saludo
>JUlio
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje