Búsqueda en Google.cl según valor de texbox en access

Con una nueva novedad de consulta... Quiero hacer una búsqueda en Google de acuerdo al valor existente en Texbox de un formulario. Eh estado buscando en la web y solo encontré esto pero para ejecutarlo en Excel (https://excelforo.blogspot.com/2014/10/vba-rellenando-un-formulario-web-html.html), lo modifique en parte para mi uso, pero obviamente no se mucho de programación y me dio error de (Se requiere un objeto)

2 respuestas

Respuesta
1

Para empezar, deberías leerte de nuevo el artículo completo y hacer exactamente lo que indica en él para averiguar los nombres e ids de los elementos que vas a manipular... porque por lo que veo en tu intento, estás usando en la parte del cuadro de búsqueda el "id" (que tampoco es el id, sino la clase) del botón para buscar.

Tras mirar el código html de la url que quieres manipular y abrir, estos dos códigos me realizan perfectamente la búsqueda:

Opción 1:
Dim IE As Object
Set IE = CreateObject("InternetExplorer.application")
IE.Navigate "https://www.google.cl/"
Do
    DoEvents
Loop Until IE.ReadyState = 4
'para completar el campo de búsqueda:
IE.Document.GetElementsByName("q")(0).Value = Me.Texto0
'para realizar la búsqueda presionamos el botón de Buscar..
IE.Document.GetElementsByName("btnK")(0).Click
IE.Visible = True
Opción 2:
Dim IE As Object
Set IE = CreateObject("InternetExplorer.application")
IE.Navigate "https://www.google.cl/"
Do
    DoEvents
Loop Until IE.ReadyState = 4
'para completar el campo de búsqueda:
IE.Document.All("q").Value = Me.Texto0
'para realizar la búsqueda presionamos el botón de Buscar..
IE.Document.All("btnK")(0).Click 
IE.Visible = True

Muy probablemente haya otras muchas formas de hacerlo, usando, por ejemplo GetElementsByClassName....

Sveinbjorn El Rojo, gracias... ambos comandos funcionan perfecto, pero tengo una pregunta adicional y debí agregarla y es que uso como navegador por defecto el Google Chrome y la nueva versión de IE que habré es antigua y si otro usuario ocupa otro tipo de navegador favorito, como se puede hacer?

Lo siento, pero desconozco cómo podrías hacerlo usando otro navegador, porque hasta donde yo sé, en VBA no puedes crear un objeto Firefox o Chrome como sí puedes hacerlo con el IE...

Si buscas mucho por internet igual encuentras la forma de hacerlo, pero no sé yo... (ojo, me refiero a que encuentres cómo pasarle datos al navegador, no a cómo abrirlo, que eso es sencillo)

He encontrado esto para excel (pero debería servir también para access), que es un poco viejo, por lo que desconozco si aún funcionará.

Tampoco lo he probado y a corto plazo tampoco tengo intención de hacerlo, por lo que si te decides a usarlo, no te podré indicar nada sobre el tema...

Por cierto, si usas la opción del selenium, tampoco te resolverá del todo el problema, porque si la BD la abre oro usuario en otro ordenador, para que funcione también tiene que tener instalado ese complemento selenium

¡Gracias! Sveinbjorn El Rojo, mucho me ayudaste con la respuesta inicial, no todo es factible. Seguiré buscando y probando... muchas gracias...

Respuesta
1

El valor debe ser convertido a objeto Ejemp. Xtxt=me.textbox1.objet

¡Gracias! Oscar por su aporte, pero no entendí mucho, realice el cambio de .Value a .objet, pero en Access no lo reconoció. Tome la opción de Sveinbjorn que me funciono bien...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas