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

Manipular calendário Web com VBA

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.
edu_vba
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Ter Out 06, 2020 10:00 pm

Manipular calendário Web com VBA

Mensagem por edu_vba »

Olá a todos!
Preciso muito de ajuda para resolver um problema, que não encontro solução há pelo menos 1 semana... :(
É sobre programação VBA Web que no final, é realizada extração de arquivo em MS Excel. Consigo realizar o login, acessar a página para inserir as datas de início e fim, e o botão 'Exportar'.

Porém na página web para inserir data nos campos é exibido um calendário, no qual o usuário seleciona o mês, o ano e o dia, depois é só clicar no botão exportar, que será realizado download do arquivo MS Excel.
Eu consigo acessar via código o calendário, ativar o link para retroceder ou adiantar o mês/ano, mas não sei como selecionar o dia.

Anexo imagens da página web com apresentação do calendário, também imagens de trechos dos códigos html.
Página de exibição do calendário
Página de exibição do calendário
Pagina_do_calendario.jpg (60.97 KiB) Exibido 3633 vezes
Códigos html - parte 1
Códigos html - parte 1
Codigo_WEB_1.jpg (151.95 KiB) Exibido 3633 vezes
Códigos html - parte 2
Códigos html - parte 2
Codigo_WEB_2.jpg (145 KiB) Exibido 3633 vezes
Se alguém puder me ajudar, desde já agradeço extremamente,

Atenciosamente,
edu_vba


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.


Raygsson
Manda bem
Manda bem
Mensagens: 118
Registrado em: Sex Jan 31, 2020 8:06 pm

Re: Manipular calendário Web com VBA

Mensagem por Raygsson »

Esta usando Internet Controls/IE?
Mais fácil atribuir diretamente um valor no input, usa esse ID "dataInicial":

Código: Selecionar todos

IE.document.GetElementById("dataInicial").value = "08/10/2020"


edu_vba
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Ter Out 06, 2020 10:00 pm

Re: Manipular calendário Web com VBA

Mensagem por edu_vba »

Olá Raygsson,

Primeiramente muito obrigado por me ajudar.
E sim! Utilizo o navegador Internet Explorer e já utilizei as seguintes abordagens:

(1) objElm.all.Item(0).Value = "01/10/2020"
(2) objElm.all.Item(0).innerText = "01/10/2020"
(3) objElm.all.Item(0).innerHTML = "01/10/2020"

Os campos recebem as datas, porém por algum motivo que eu não sei explicar, é como se a página web não fosse atualizada internamente e apesar de todos os campos preenchidos, retorna a seguinte mensagem de erro:
MSG DE ERRO DA PÁGINA WEB
MSG DE ERRO DA PÁGINA WEB
MSG_DE_ERRO.jpg (29.67 KiB) Exibido 3617 vezes
A partir desse passo, não sei se é necessário realizar algum outro procedimento, ou se a página web apenas reconhece internamente a inserção de data através do calendário.

Atenciosamente,
edu_vba


Raygsson
Manda bem
Manda bem
Mensagens: 118
Registrado em: Sex Jan 31, 2020 8:06 pm

Re: Manipular calendário Web com VBA

Mensagem por Raygsson »

Tente atualizar o elemento depois que inserir o novo valor:

Código: Selecionar todos

IE.document.GetElementById("dataInicial").value = "08/10/2020"
IE.document.GetElementById("dataInicial").FireEvent ("onChange")


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.


edu_vba
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Ter Out 06, 2020 10:00 pm

Re: Manipular calendário Web com VBA

Mensagem por edu_vba »

Olá novamente Raygsson,

Ao utilizar o FireEvent, simplesmente nada aconteceu... :(

Atenciosamente,
edu_vba


Raygsson
Manda bem
Manda bem
Mensagens: 118
Registrado em: Sex Jan 31, 2020 8:06 pm

Re: Manipular calendário Web com VBA

Mensagem por Raygsson »

Então infelizmente não dá ajudar sem ter acesso a página, precisaria analisar os elementos e como se comportam.


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