Página 14 de 23

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qui Ago 21, 2014 12:45 am
por Marconizf
Ok. Isso mesmo!
Funcionou!

Valeu, Mikel. Não posso deixar de registrar aqui o reconhecimento pela sua atuação nesse espaço, que contribui imensamente no aprendizado e desenvolvimento de muitos que militam (e os que desejam militar) na área de programação.
Parabéns, porque além de um grande expert em programação, reconhece-se em você um grande ser humano.

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qui Ago 21, 2014 9:18 am
por Mikel Silveira Fraga
Marconi, bom dia.

Obrigado pelos elogios, mas apenas faço tudo isso como agradecimento.

Como tantos aqui, tive minhas dúvidas e minhas dificuldades. Mas aqui no fórum, trocando idéias com pessoas como o Tomas, joseA, Mauro Coutinho e tantos outros, fui aprendendo e me desenvolvendo mais a cada dia.

O mínimo que posso fazer é ajudar a principal ideia do fórum, compartilhar conhecimento, e ainda me frusto por não ter tempo de poder ajudar mais os usuários.

Se alguém merece algum elogio aqui, tem que ser o Tomas, pela iniciativa desse trabalho (o fórum) e todos os usuários que participam aqui.

Abraços a todos e vamos que vamos!!!

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Ter Nov 04, 2014 1:34 pm
por daviso
Boa tarde a todos.

Passei a parte da manhã inteira lendo as paginas e pude aprender muitas coisas, corrigir antigas e otimizar o q eu ja sei.

Possuo um código no qual consegui reduzir drasticamente, porém, o principal não está acontecendo, que é obter o valor indicado na célula da minha planilha.

E sinto que estou perdido, pois o VBA não aponta nenhum erro no qual possa correr atras, ele simplesmente executa o código corretamente.
Gostaria de obter cada valor desta pagina para a minha planilha.

Acredito que para os mais experts seja simples.

Segue o código:

Private Sub Worksheet_Activate()
Dim IE As New InternetExplorer
Dim SIF_site As String


IE.Visible = True
IE.Navigate "sigsif.agricultura.gov.br/sigsif_cons/!ap_estabelec_nacional_detalhe?id_estabelecimento=453"

Do
DoEvents
Loop Until IE.ReadyState = READYSTATE_COMPLETE


Range("B2").Value = IE.Document.all.Item("tx_logradouro").innerText

End Sub

Peço a ajuda para que eu possa resolver este problema.

Muito obrigado a todos e parabens pelas 14 paginas de puro conhecimento que foram escritas até agora.

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qua Jan 21, 2015 8:48 am
por RafaelSantos
Prezados, bom dia!

Estou tentando fazer com que a macro click em um texto (hiperlink) da mesma forma que é utilizado para "ie.Document.all("location").Click" ou ie.Document.Forms("busca").Submit. Mas não estou conseguindo.

O link que preciso acionar ("clicar") está via javascript, segue o trecho do código html.

href="javascript:location.href='/sicap/web/displayWeb.asp?id=4967719'"

PÁGINA:

http://sistemas.anatel.gov.br/sicap/web ... xcel=falsE

Obrigado!!!

Abraços,

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qua Jan 21, 2015 1:24 pm
por Marciel Silva
Rafael,

Poderia disponibilizar o seu modelo para ficar mais fácil te ajudar?

Att,

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qua Jan 21, 2015 7:08 pm
por Mikel Silveira Fraga
Daviso, boa noite.

Realizei uns testes com o código que você disponibilizou e, após uma alteração, consegui capturar os valores.

Observe a sua linha abaixo:

Código: Selecionar todos

Range("B2").Value = IE.Document.all.Item("tx_logradouro").innerText
Você esta tentando acessar a propriedade innerText do elemento web, mas no código html / tag input, o endereço esta na propriedade Value, conforme abaixo:

<input name="tx_logradouro" disabled="" value="RUA SENADOR ATILIO FONTANA, 86" size="97" maxlength="100" onfocus="ConfiguraCorCampo(this);" onblur="ReConfiguraCorCampo(this);">

Então, alterando essa propriedade innerText para Value, é possível capturar o valor. Veja como ficou o código abaixo:

Código: Selecionar todos

Range("B2").Value = IE.Document.all.Item("tx_logradouro").Value
Espero ter ajudado.

Abraços!!!

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Qua Jan 21, 2015 7:24 pm
por Mikel Silveira Fraga
Rafael, boa tarde.

Estou vendo no endereço do navegador que a pesquisa desse site foi realizada através da sequência numérica: 535000006102015.
http://sistemas.anatel.gov.br/sicap/web ... tNumero=[b]535000006102015[/b]&RadioRemetente=0&postNomeRemetenteInteressado=&RadioAssunto=0&postAssunto=&postDataInicio=&postDataFim=&postIdentificador=&intOpcaoExcel=falsE

Se eu estiver correto, posso utilizar essa informação para acionar o click do link, pois é a única informação de difere dos demais links.

A pergunta é: por acaso vc tem uma base de dados com esses valores????


Fico no aguardo seu retorno. Abraços!!!!

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Sex Jan 23, 2015 8:28 am
por RafaelSantos
Oi Mikel, bom dia!
Obrigado pelo retorno.

Segue anexo!

Atualmente eu busco apenas o resultado da consulta, de manei engatilhada, mas consigo trazer a linha do resultado em uma variável.
O ideal seria retornar o valor de cada campo da tabela de resultado em um variável para depois colcoar célula a célula no excel. Mas dessa forma eu não consegui.

Essa "busca" da planilha em anexo, foi apenas em caráter emergencial, pois o que eu preciso mesmo é após reliazar a consulta, clicar no número do processo, ir na tabela "Movimentações" e retornar a primeira linha logo após os campos "Origem: Destino: Movimentado em: Recebido em:"

Desde já agradeço pela ajuda.

Abraços

Rafael

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Dom Jan 25, 2015 10:57 am
por Mikel Silveira Fraga
Rafael, bom dia.

Cara, gostei muito do seu modelo. Eu acho que você esta indo no caminho certo.

Com base no modelo que você passou, fiz algumas alterações e adaptações na planilha.

Todo o código adicionado no VBE se encontram no Módulo2 e na Sheet3.

Segue modelo em anexo. Espero que ajude.

Abraços e excelente final de semana.

Re: Interação VBA com Internet Explorer (dúvidas)

Enviado: Ter Jan 27, 2015 7:33 am
por RafaelSantos
Obrigado! Resolvido!!!!

Estou estudando o código que você utilizou,rsrsrs muito legal!

Abraços