Jump to content

Copiar todo el contenido de WebBrowser


Recommended Posts

Buen día a todos.

El proyecto en que estoy trabajando Userform que contiene un control WebBrowser, que me permite acceder a una página Web y deseo hacerles la siguiente consulta:

¿Que metodo puedo usar para copiar todo el contenido de la página web contenida en el WebBrowser?

Disculpen que por razones confidenciales no pueda adjuntar el archivo original.

Link to post
Share on other sites

Hola

Este control realmente lo use una o dos veces, hace mucho..., pero intenta con algo como

contenido = Me.WebBrowser1.Document.body.innertext

O utiliza el metodo ExecWb 

Copiar: WebBrowser.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT  

Pegar: WebBrowser.ExecWB OLECMDID_PASTE, OLECMDEXECOPT_DODEFAULT

No olvides controlar o tratar los errores si se dan

 

Saludos 

Link to post
Share on other sites

Gracias Gerson.

El código funciona así como me lo compartes.

Pero por alguna razón no trae nada de información (tal vez sea por la construcción de la página).

No se si fuera posible con código seleccionar todo y pegarlo en excel, ya que al realizar esta acción manualmente, si me trae los datos de la página en cuestión.

De antemano muchas gracias.

image.png

Link to post
Share on other sites
Hace 33 minutos , Gerson Pineda dijo:

Que tal Mauricio

Como te lo comente con el método ExecWb, también puedes seleccionar, prueba con esa opción a ver si resulta 

 

Saludos 

Gerson, gracias por el tiempo y la paciencia

La verdad es que probé ambas funciones, con cualquier otra página funcionan a la perfección, pero particularmente con esta página de la empresa no me arroja datos.

No se si exista otra alternativa.

De antemano muchas gracias

Link to post
Share on other sites

Hola amigos

Como hemos venido diciendo muchos por año, los objetos Webbrowser tienen muchas limitaciones, si a eso le sumamos que la arquitectura de cada web es distinta, pues como resultado tenemos que no necesariamente en toda web funciona lo mismo. Como Mauricio comenta que no puede compartir la web (por ende debe ser de intranet y/o con loguin), pues una alternativa basada en la propuesta de mi querido amigo Gerson, sería intentar así:

Me.WebBrowser1.ExecWB OLECMDID_SELECTALL, OLECMDEXECOPT_DODEFAULT
Me.WebBrowser1.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT
Hoja3.Paste Range("A2")

En donde obviamente hay que cambiar la celda y el nombre del módulo de la hoja. De no resultar, pues necesariamente para una respuesta certera necesitaríamos ver la web; como no se puede, casi imposible garantizar 100% de efectividad en las propuestas.

Saludos. 

 

Link to post
Share on other sites
Posted (edited)

Saludos a Ambos.

Les agradezco mucho la ayuda, la orientación y los comentarios.

Después de realizar la pruebas en otras páginas y notar que las sentencias que me comparten son adecuadas, me termine percatando que la página con la que estoy trabajando cuenta al cargar, no carga el encabezado y el cuerpo del documento Web, y muestras dos paneles (frame) con sus respectivas divisiones, lo que necesitaba el código era simular un click, para activar el área que debía seleccionar y copiar.

De favor se puede dar por cerrado el tema.

Nuevamente les doy las gracias no solo por este post, si no por todo lo que comparten. Saludos.!!!

Edited by Mauricio_ODN
Link to post
Share on other sites
Guest
This topic is now closed to further replies.


×
×
  • Create New...

Important Information

Privacy Policy