¿Recuperando datos web usando VBA?

Es posible, pero VBA no es la mejor herramienta para el trabajo. Con VBA, necesitará agregar un montón de funciones .NET estándar para poder leer HTML y luego analizar la secuencia para obtener los datos que desee. Ya hay una gran cantidad de herramientas disponibles que lo hacen de manera mucho más eficiente (Aquí hay una opción Import.io | Plataforma de datos web y herramienta de raspado web gratuita). En lugar de tomarse el tiempo para desarrollar algo personalizado, recomendaría usar una herramienta que pueda generar los datos en Excel directamente, csv o algún otro formato que pueda importarse más fácilmente a Excel y luego hacer cualquier análisis que desee con los datos. ¡Esto le ahorrará mucho tiempo!

Si algo personalizado es el camino que desea, simplemente iría directamente a otra solución de software. Una búsqueda rápida en Google le dará muchos ejemplos de raspado web usando .NET, Python, Rails y muchos otros idiomas. Una solución que use uno de estos idiomas será más rápida, más flexible y confiable.

Quiero agregar una advertencia a esto. La mayoría de las empresas no aprecian que se eliminen sus datos. Por lo tanto, puede encontrar casos en los que los datos se muestran de una manera que dificulta el raspado o su IP puede bloquearse si visita repetidamente un sitio una y otra vez. Si se trata de un sitio web interno de la empresa, puede recibir una visita de su departamento de TI. Siéntase libre de intentarlo, pero no consideraría lo que sea que desarrolle como una solución a largo plazo.

VBA tiene el objeto WebBrowser para que pueda crear un navegador web personalizado.

Cuando recupera una página web, está descargando un archivo de texto que su navegador utiliza para armar una página web. Los datos que ve en la página de su navegador ya están en su computadora en una carpeta temporal. Un navegador web personalizado puede mostrarle vistas de texto o html. Si hay una tabla de datos en eso, verá los datos en una tabla HTML o en un formulario generado por PHP. Una vez que tenga un archivo con datos de texto en él en cualquier tipo de patrón, los datos se pueden extraer fácilmente con funciones de cadena de código VBA o funciones de Excel.

OBJETO DE WEBBROWSER (en Microsoft)

Propiedad del documento ◄ Estudie esto para su versión VBA

En Visual Basic 6.0, la propiedad Document devuelve una cadena que contiene el nombre de un documento HTML; en Visual Basic 2008, devuelve el documento HTML en sí.

Puede vincular los datos en celdas de Excel. Excel elige la tabla html.

Excel: los datos de la Web pueden proporcionarle una descripción más detallada.

Normalmente uso consultas web para obtener los datos, pero algunos sitios web son más difíciles de descifrar cuando recurro al desguace web HTML. Intenta buscar en Google ejemplos de cómo se escribe el guión. Es bastante fácil de replicar una vez que entiendes cómo se hace esto. Las consultas web son probablemente la mejor manera de hacerlo y que el desguace html. Puede haber otros métodos sofisticados, pero soy consciente de estos dos. Probablemente la comunidad de Quroan pueda ayudar.

Buena suerte:)