Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Problema ao inserir o dado na Web

A Web está aí, não há como negar. Ela é onipresente em praticamente toda operação eletrônica realizada nos dias de hoje. Como não podia ser diferente, o Excel, ferramenta máxima para analistas e profissionais das mais diversas áreas do mercado precisa estar alinhado com esta necesssidade. E ele está! Neste forum, o debate é focado em expor dúvidas, sugestões, modelos de código e exemplos de uso do Excel na Integração com tecnologias Web.
pjads
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Qua Out 30, 2019 11:24 am

Problema ao inserir o dado na Web

Mensagem por pjads »

Boa tarde,

Estou tentando fazer o preenchimento automático de uma guia de DAE, porém preciso de uma ajuda, pois cada passo o site muda e as informações que insiro não estão puxando falando que a variável do objeto ou do bloco 'With' não está inserida. Quem puder me ajudar agradeço. O problema está em negrito.

Esse é o código (ainda em processamento)

Sub Emissao_DAE_MG_1()
Dim ie As InternetExplorer
Dim icms As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate "https://www2.fazenda.mg.gov.br/arrecada ... =CONFIRMAR"
Do Until ie.ReadyState = READYSTATE_COMPLETE
Loop
ie.Visible = True
ie.document.all.Item("cmbICMS").Item(2).Selected = True
ie.document.all.Item("btnConfirmar").Click
While ie.Busy
Wend
ie.document.all.Item("cmbTipoIdentificacao").Item(1).Selected = True
ie.document.getelementsbyname("txtIdentificacao").Item.InnerText = "17676214000185"
ie.document.all.Item("btnPesquisar").Click
While ie.Busy
Wend
newHour = Hour(Now())
newMinute = Minute(Now())
newSecond = Second(Now()) + 3
waitTime = TimeSerial(newHour, newMinute, newSecond)
Application.Wait waitTime
ie.document.all.Item("cmbReceita").Item(313).Selected = True
ie.document.getelementsbyname("dtVencimento").Item.InnerText = "01/10/2019"
ie.document.getelementsbyname("dtPagamento").Item.InnerText = "08/10/2019"


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Julio Mangilli
Manda bem
Manda bem
Mensagens: 127
Registrado em: Sex Out 05, 2018 2:42 pm

Re: Problema ao inserir o dado na Web

Mensagem por Julio Mangilli »

Amigo,

Por gentileza, podes passar o link do site?

ie.Navigate "https://www2.fazenda.mg.gov.br/arrecada ... =CONFIRMAR" ??????

Se puderes passar o link inicial que de corretamente na sua primeira ação?
Preferes usar o IE? Seria interessante usar o Selenium para isso eu acho melhor para navegar com ele.


Att.


pjads
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Qua Out 30, 2019 11:24 am

Re: Problema ao inserir o dado na Web

Mensagem por pjads »



pjads
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Qua Out 30, 2019 11:24 am

Re: Problema ao inserir o dado na Web

Mensagem por pjads »

www2.fazenda.mg.gov.br/arrecadacao/ctrl/ARRECADA/ARRECADA/DOCUMENTO_ARRECADACAO?ACAO=CONFIRMAR


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Julio Mangilli
Manda bem
Manda bem
Mensagens: 127
Registrado em: Sex Out 05, 2018 2:42 pm

Re: Problema ao inserir o dado na Web

Mensagem por Julio Mangilli »

Olá amigo,

Infelizmente no IE não consegui, e pior no Selenium também deu um erro.
Baixe o Selenium basic e atualize o Chormedriver para testar.

Segue.
Sub ICMSMG()

Dim driver As New Selenium.ChromeDriver
Set driver = New ChromeDriver
'driver.AddArgument ("--headless")
driver.Get "https://www2.fazenda.mg.gov.br/arrecada ... =CONFIRMAR"
While Busy
Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 15)
DoEvents:
Wend

driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[2]/tbody/tr[2]/td[2]/div/input").Click
driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[2]/tbody/tr[2]/td[2]/div/div[2]/span[3]").Click ("2")


driver.FindElementByName("btnConfirmar").Click


While Busy
Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 15)
DoEvents:
Wend
driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[2]/tbody/tr[2]/td[2]/div/div/input").Click
driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[2]/tbody/tr[2]/td[2]/div/div/div[2]/span[2]").Click
While Busy
Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 15)
DoEvents:
Wend
driver.FindElementByName("txtIdentificacao").SendKeys "17676214000185"
driver.FindElementByName("btnPesquisar").Click
While Busy
Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 15)
DoEvents:
Wend

driver.FindElementByName("dtVencimento").SendKeys "01/10/2019"
driver.FindElementByName("dtPagamento").SendKeys "08/10/2019"
While Busy
Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 15)
DoEvents:
Wend


driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[4]/tbody/tr[3]/td[2]/div/div/input").Click
driver.FindElementByXPath("/html/body/div[1]/div[2]/div/div[2]/div/form/table[4]/tbody/tr[3]/td[2]/div/div/div[2]/span[16]").Click

driver.FindElementByName("btnCalcular").Click


End Sub




Aqui me deu um erro danado que não estou conseguindo passar, não sei se é da programação ou do site, mas acredito que os Jed´s vão conseguir ajuda, eu vou tentar mais vezes mas segue a programação para que você possa também tentar. Desculpas em não conseguir por agora, mas vou continuar tentando.

Se conseguir por favor nos de retorno amigo.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder