Como interagir com sites usando VBA e Internet Explorer - o método ExecWB
Este post foi originalmente publicado em https://officevbavsto.blogspot.com/2011/04/vba-internet-usando-o-metodo-execwb.html.
Hoje, eu escrevo mais um artigo sobre como interagir com sites usando VBA e Internet Explorer, mas dessa vez vamos entender o método ExecWB
.
O método ExecWB
executa instruções no navegador, tais como Imprimir, Salvar como, mudar Zoom e etc.
Sintaxe:
ExecWB(cmdID As OLECMDID, cmdexecopt As OLECMDEXECOPT, [pvaIn As Variant], [pvaOut As Variant])
cmdID As OLECMDID
: Valor enumerado que define qual comando você quer executar;cmdexecopt As OLECMDEXECOPT
: Valor enumerado que define como você quer que esse comando seja executado, exibindo uma janela de prompt para o usuário e etc.;[pvaIn As Variant]
: Parâmetros de entrada. Pode ser numérico ou alfanumérico. Dependendo do comando que você estiver executando esse campo poderá ser preenchido (SAVEAS, por exemplo) ou poderá ficar em branco (VbNullString);[pvaOut As Variant]
: Parâmetros de saída.
Vamos a alguns exemplos
Mudar o tamanho das letras da página.
Sub AcessaPagina()
Dim ie As InternetExplorer
Set ie = New InternetExplorer
ie.Navigate "http://www.google.com.br/#hl=pt-BR&source=hp&biw=1276&bih=837&q=uol+not%C3%ADcias&aq=f&aqi=g10&aql=&oq=&fp=516cc978868108d7"
ie.Visible = True
ie.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, CLng(1), vbNull
End Sub
Obs.: Veja que no parâmetro de entrada especificamos o valor 1, que é a menor letra possível. Você pode especificar de 1 até 4.
Exibir janela de impressão
[...]
ie.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DODEFAULT
[...]
Exibir janela de configurar página
[...]
ie.ExecWB OLECMDID_PAGESETUP, OLECMDEXECOPT_DODEFAULT
[...]
Exibir janela de salvar como
[...]
ie.ExecWB OLECMDID_SAVEAS, OLECMDEXECOPT_DONTPROMPTUSER, "Teste2.html", vbNullString
[...]
Imprimir
[...]
ie.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, "", ""
[...]
Créditos
Photo by Startup Stock Photos from Pexels