VBA interacting with Internet Explorer

Nill2013Br

New Member
Joined
Feb 23, 2018
Messages
1
Estou adaptando o código abaixo e encontrei uma situação em que não posso extrair os dados. Na parte final do código, você indica onde o Loop é feito para encontrar o objeto da tabela e os objetos do Conjunto CEP estão localizados, se você está localizado, você indica a partir de qual objeto como informação a ser salvas no indicado a célula deve ser recuperada. Eu segui o script inteiro e no meu novo aplicativo não aparece um identificador para o objeto do qual eu quero extrair uma informação. Estou deixando dois anexos onde aparece os objetos que eu quero extrair e nenhum outro anexo ou id dos objetos que eu quero extrair. Você pode me ajudar a resolver, obrigado.


Esta é a impressão das telas para indicar o que eu quero extrair:

https://drive.google.com/file/d/15-HDro-x8uinT1Cd8nvFhVfjRA067-tZ/view?usp=sharing
https://drive.google.com/file/d/1uz9gXKj12UksDTy04iueDDHIpBbKyHha/view?usp=sharing
https: //drive.google.com/file/d/14_T7_W6rxxEqggVj4xC6fLA00OjaP27C/view?usp=sharing




A parte para a extração seria assim.
Para cada eu não IE.Document.body.getElementsByTagName ("tabela")
Se InStr (i.innertext, "code")> 0 Then
For Each l In i.getElementsByTagName ("tr")
Se InStr (l.innertext, Organ ) Então
Range ("C" e lContent) .Value = l.getElementsByTagName ("LACK THIS ID") (1) .innertext - e como extraio como outras informações porque existem duas situações.


[CÓDIGO]'

Em resumo de erros, Next


ThisWorkbook.VBProject.References.AddFromGuid "{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}", 1, 1
Sub de fim de


sessão Sub lsSearchElement ()
'Incluir referência se não houver
lReferenciaIE

Dim IE como InternetExplorer
Dim lCidade As String
Dim lUF As String
Dim lUltimaLinhaAtiva As Long
Dim lContador As Long

'Identifica a última célula ativa na lista
(Folhas de Trabalho ("Plan1"). Rows.Count, 1) .End (xlUp) .Row

' Cria um objeto do Internet Explorer
Set IE = Novo InternetExplorer

'Tornar o objeto visível
IE.Visible = True


'Loops através de todas as linhas na planilha
Para lContador = 2 Para lastLineActive
' Navegue até o site da postagem
IE.Navigate "http://www.buscacep.correios.com.br/servicos/dnec/menuAction .do? Metodo = menuFaixaCep "

'Identifica se a página já foi totalmente carregada
enquanto IE.ReadyState <> READYSTATE_COMPLETE
Wend

' Como a página possui JavaScript que cria objetos que são preenchidos após carga completa, você precisa
" esperar um pouco, colocar 3 segundos, mude conforme necessário.
'Se você não tiver javascript na criação de objetos de página, comente esta parte do código, porque estará bem
'execução mais rápida.
sng = Timer
Do While sng + 3> Timer
Loop

'Carregue os dados da cidade e UF que serão preenchidos na página
lCidade = Range ("B" & lCounter) .Value
lUF = Range ("A" e lCounter) .Value

' Carregue dados da cidade e da UF na página e
subforme os dados do formulário IE.Document.all ("Locality"). Innertext = lCity
IE.Document.all ("UF"). Valor = lF
IE.Document.forms ("Geral").

'Identifica se a página já foi totalmente carregada
enquanto IE.ReadyState <> READYSTATE_COMPLETE
Wend


"Porque a página possui JavaScript que cria objetos que são preenchidos após carga total, você precisa
" esperar um pouco, colocar 3 segundos, mudar conforme necessário ".
"Se você não tiver javascript na criação de objetos de página, comente esta parte do código, porque será
uma execução bem rápida".
sng = Timer
Do While sng + 3>
Loop Loop

'Loops tabela objetos na página e pesquisa o código postal: (s) campo preenchido.
' Então ele procura a segunda coluna da linha de código postal e armazena esta informação diretamente na coluna C da linha
'da planilha
para cada i no IE.Document.body.getElementsByTagName ("tabela")
Se InStr (i.innertext, "Código Postal (s):")> 0 Então
Para Cada l Em i.getElementsByTagName ("tr")
Se InStr (l.innertext, lCity), então
Range ("C" e lContent). Valor = l.getElementsByTagName ("td") (1) .innertext
End If
Next l
End If
Next i
Próximo lContent

MsgBox "Done!"

End Sub [/ CODE]






view
view
 

Excel Facts

How can you automate Excel?
Press Alt+F11 from Windows Excel to open the Visual Basic for Applications (VBA) editor.

Forum statistics

Threads
1,224,818
Messages
6,181,152
Members
453,021
Latest member
Justyna P

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top