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

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

Perguntas e Repostas sobre os artigos, posts e arquivos que são postados no site
RafaelSantos
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Qua Jan 21, 2015 8:35 am

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

Mensagem por RafaelSantos »

Mikel, bom dia!

Nas primeiras vezes que utilizei o código, estava funcionando. Com o tempo, precisei colocar um "wait" para que a velocidade da macro acompanhe o carregamento da página do IE.
Mas agora tem aparecido um erro estranho, normalmente após ter feito a consulta de 10 linhas.

Dá um erro em "For Each objTData In objElementCol" de "permissão negada". Segue print do erro em anexo,

Não consegui entender o que houve para encontrar uma solução.

Abraços

Rafael
Anexos
Print do erro
Print do erro
Print do erro.jpg (236.32 KiB) Exibido 11460 vezes


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.


Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

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

Mensagem por Mikel Silveira Fraga »

Rafael, boa tarde.

O que pode estar ocorrendo neste caso é alguma falha no momento de carregar a página.

Este erro deve estar ocorrendo porque o objElementCol não esta carregando a coleção da Tag "td".

Uma pergunta: você acrescentou algum processo não listado antes, ou simplesmente adicionou o comando Wait?

Enquanto aguardo sua resposta, vou dar uma olhada no funcionamento da versão que te passei.

Fico no aguardo.


RafaelSantos
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Qua Jan 21, 2015 8:35 am

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

Mensagem por RafaelSantos »

Apenas inserir o "wait 5" toda vez que chama uma página. Pois quando acessa a o processo é rápido para carregar, mas quando clica no processo para ir para segunda tela, demora uns 3-4 seg.


RafaelSantos
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Qua Jan 21, 2015 8:35 am

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

Mensagem por RafaelSantos »

Não entendo. Às vezes consulta 30 processos, mas logo após da o erro.


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.


Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

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

Mensagem por Mikel Silveira Fraga »

Rafael, boa noite.

Cara, quando li seu post e vi a imagem que você mencionou, achei que você tivesse retirado uma linha de comando que aguarda o carregamento da página e, apenas depois, continua o processo. Mas fui conferir e me enganei.

Antes de postar o modelo, eu havia testado em minha casa e rodou sem problema. Hoje, após sua mensagem, rodei a mesma rotina no meu serviço e, devido várias proteções de segurança de rede, eu esperava que tivesse uma redução brusca no desempenho da rotina, mas o resultado foi quase o mesmo.

Não posso afirmar se a versão do seu MS Excel seja o problema, pois eu testei tanto no 2007 quanto no 2010.

Não sei dizer se tem a ver, mas se você retirar os Wait, ocorre o mesmo problema????

Caso ocorra o mesmo problema, Existe um outro comando para aguardar o carregamento das páginas que podem ser adicionados, mas tenho que procurar nos meus arquivos. Encontrando eu adiciono aqui.

No momento estou sem saber exatamente o que pode estar ocorrendo nesta rotina.

Diante desse problema, peço a ajuda dos amigos do fórum. Se alguém tiver uma ideia sobre esse Erro de Execução 70, ajudaria muito.

Abraço a todos galera!!!


RafaelSantos
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Qua Jan 21, 2015 8:35 am

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

Mensagem por RafaelSantos »

Agora a noite conesegui rodar todos sem nennhum problema.
È intermitente.

Vou tentar fazer a macro abrindo e fechado uma nova janela, para ver se o problema resolve.
Se não, o meu plano meu é utilizar uma macro para limpar cookies e temporary internet files.

Desde já agradeço todo ajuda.

Abraços


Geovani
Acabou de chegar
Acabou de chegar
Mensagens: 1
Registrado em: Seg Abr 13, 2015 11:37 am

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

Mensagem por Geovani »

Tomás, primeiramente gostaria de te agradecer pelo site é por este blog seu. Pois com eles eu aprendi muito e confesso tornei um grande fã dos seus códigos.

Mas agora tenho que resolver uma um problema, tenho que inserir um chassi no campo “chassi” no link https://www.rr.getran.com.br/site/apps/ ... 1&SINIAV=N porem não estou conseguindo.

Estou postando um código que estou usando, mas sem sucesso.

Mais uma vez obrigado por tudo.

Sub acessar_site()

Dim ie As InternetExplorer
Dim ULogin As Boolean, ieForm
Dim out_94 As Integer, nov_94 As Integer
chassi_pesquisa = [A1]
Set ie = New InternetExplorer
ie.Visible = True
ie.Navigate "https://www.rr.getran.com.br/site/apps/ ... 1&SINIAV=N"
Do Until ie.ReadyState = READYSTATE_COMPLETE
Loop
ie.Document.frames(0).Document.all("chassi").innerText = "chassi_pesquisa"
Set ie = Nothing

End Sub


Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

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

Mensagem por Mikel Silveira Fraga »

Giovani, boa tarde e seja bem vindo ao fórum.

Verificando o código que você utilizou, detectei dois erros até o momento. Analisando o primeiro, veja a linha abaixo:

Código: Selecionar todos

ie.Document.frames(0).Document.all("chassi").innerText = "chassi_pesquisa"
O valor chassi_pesquisa é uma variável. mesmo você não a tendo declarado com a instrução Dim. No comando acima, você colocou o valor entra Aspas Duplas, indicando que o valor chassi_pesquisa é um texto/string, e não uma variável com um valor específico. Quando substituir, ficará assim:

Código: Selecionar todos

ie.Document.frames(0).Document.all("chassi").innerText = chassi_pesquisa
Outro ponto é a informação da Caixa de Texto Chassi do site. Substitua o comando utilizado, por este abaixo:

Código: Selecionar todos

ie.Document.getElementsByName("chassi").Item.InnerText = chassi_pesquisa
Acredito que com essas duas mudanças, você irá conseguir concluir sua rotina.

Abraços!!!


Guima
Consultor
Consultor
Mensagens: 242
Registrado em: Sex Out 30, 2009 6:10 am

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

Mensagem por Guima »

Bom dia,

Mikel, aproveitando sua boa vontade e vendo que voce esta afiado nessas interações WEB. Vi há poucos meses num site americano um ADDIN que importa os post no Facebook para o Excel. Por curiosidade eu tentei alguns comandos discutidos aqui neste post, mas muito provavelmente por inabilidade minha nada consegui. Então, caso tenha um tempinho, peço que depois veja se há essa possibilidade, ou somente por ADDIn mesmo.

Valeu


Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

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

Mensagem por Mikel Silveira Fraga »

Boa noite Guima, blz!

Agora fiquei me sentido com esse "afiado nessas interações WEB". Vou te contar um segredo, nunca utilizei nenhuma rotina que precisasse conectar o Excel a algum site da Web. Acabei aprendendo a fazer essas conexões por dois motivos:

- Quando descobri esse tópico aqui no fórum, fiquei boquiaberto, pois nunca havia escutado falar. Comecei a pesquisar por curiosidade mesmo;

- Trabalhar com essas estruturas web não foi tão complicado pra mim, pois já trabalhei com Html e JavaScript, coisa que de vez em quando estou estudando e aprendendo mais, inclusive atualmente tenho visto muito manipulação de Xml, já que a forma de se utilizar Tags nas estruturas são muito parecidas.

Sobre esse lance do AddIn, pode ser que tenha alguma vantagem para esse tipo de importação, pois atualmente o Visual Studio da suporte para VSTO (Visual Studio Tools for Office), permitindo aos desenvolvedores utilizar o C# e VB.Net para desenvolver aplicações Office, muito mais seguras e sofisticadas.

Por outro lado, não acho que seja impossível realizar tal façanha apenas com Excel e VBA, mas com certeza será mais trabalhoso.

Se depois puder mandar o link desse AddIn que você encontrou, gostaria de dar uma olhada.

Aguardo resposta. Abraços e bom final de semana a todos!!!


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