Obter Informações de Pedágio - Transportadora
Enviado: Ter Abr 04, 2017 5:04 pm
Boa tarde, sou novo no fórum e pesquisei algumas coisas sobre pedágio e não consegui muita coisa, abaixo tenho um código em VBA para Excel, que coleta informações de uma planilha, submete a uma pagina da WEB e e obtêm as informações de retorno:
Sub PesqCustoPedágios()
Dim IE As InternetExplorer, CidadeOrig As String, sng As Date
Dim LR As Long, Contador As Long, CidadeDest As String
'Identifica a última célula ativa da lista
LR = Cells(Rows.Count, 1).End(xlUp).Row
'Cria um objeto Internet Explorer
Set IE = New InternetExplorer
'Torna o objeto visível
IE.Visible = False 'True
'Faz um loop por na planilha
For Contador = 2 To LR
'Navega ao site do Mapeia
IE.Navigate "http://qualp.com.br/"
'Identifica se a página já foi carregada
While IE.ReadyState <> READYSTATE_COMPLETE
Wend
sng = Timer
Do While sng + 3 > Timer
Loop
'Carrega os dados que serão preenchidos na página
origem = Range("A" & Contador).Value
destino = Range("B" & Contador).Value
eixos = Range("C" & Contador).Value
categoria = Range("D" & Contador).Value
'Envia os dados da planilha e submente os dados do formulário
IE.Document.all("origem").Value = origem
IE.Document.all("destino").Value = destino
IE.Document.all("eixos").Value = eixos
IE.Document.all("auto-cat") = categoria
IE.Document.all.Item("roteirizar").Click
'Identifica se a página já foi totalmente carregada
While IE.ReadyState <> READYSTATE_COMPLETE
Wend
sng = Timer
Do While sng + 3 > Timer
Loop
'Coloca nas colunas os valores totais calculados
Cells(Contador, 5) = IE.Document.getElementById("roteirizador-info-distancia").innerText
Cells(Contador, 6) = IE.Document.getElementById("roteirizador-info-duracao").innerText
Cells(Contador, 7) = IE.Document.getElementById("custos-totais-value").innerText
Next Contador
IE.Quit
End Sub
No entanto para conseguir a categoria do veiculo o mesmo é feito no objeto row.auto-cat da pagina, e não consegui entender como poderia dar essa informação para o site...
Anexo mandei a planilha para quem pudesse me ajudar.
Grande abraço.
Clessio
Sub PesqCustoPedágios()
Dim IE As InternetExplorer, CidadeOrig As String, sng As Date
Dim LR As Long, Contador As Long, CidadeDest As String
'Identifica a última célula ativa da lista
LR = Cells(Rows.Count, 1).End(xlUp).Row
'Cria um objeto Internet Explorer
Set IE = New InternetExplorer
'Torna o objeto visível
IE.Visible = False 'True
'Faz um loop por na planilha
For Contador = 2 To LR
'Navega ao site do Mapeia
IE.Navigate "http://qualp.com.br/"
'Identifica se a página já foi carregada
While IE.ReadyState <> READYSTATE_COMPLETE
Wend
sng = Timer
Do While sng + 3 > Timer
Loop
'Carrega os dados que serão preenchidos na página
origem = Range("A" & Contador).Value
destino = Range("B" & Contador).Value
eixos = Range("C" & Contador).Value
categoria = Range("D" & Contador).Value
'Envia os dados da planilha e submente os dados do formulário
IE.Document.all("origem").Value = origem
IE.Document.all("destino").Value = destino
IE.Document.all("eixos").Value = eixos
IE.Document.all("auto-cat") = categoria
IE.Document.all.Item("roteirizar").Click
'Identifica se a página já foi totalmente carregada
While IE.ReadyState <> READYSTATE_COMPLETE
Wend
sng = Timer
Do While sng + 3 > Timer
Loop
'Coloca nas colunas os valores totais calculados
Cells(Contador, 5) = IE.Document.getElementById("roteirizador-info-distancia").innerText
Cells(Contador, 6) = IE.Document.getElementById("roteirizador-info-duracao").innerText
Cells(Contador, 7) = IE.Document.getElementById("custos-totais-value").innerText
Next Contador
IE.Quit
End Sub
No entanto para conseguir a categoria do veiculo o mesmo é feito no objeto row.auto-cat da pagina, e não consegui entender como poderia dar essa informação para o site...
Anexo mandei a planilha para quem pudesse me ajudar.
Grande abraço.
Clessio