Save JavaScript generated IE file using VBA
Dear, I am using the routine to access a page and download a file, which uses javascript to be generated, but I need this file to be saved automatically, without user intervention.
Sub ConnectWeb()
Dim ie As InternetExplorer
Dim C
Dim ULogin As Boolean, ieForm
Dim MyPass As String, MyLogin As String
Dim Linha As Integer
Dim PN As String
MyLogin = Application.InputBox("Por Favor entre com o Login", "Empresa", Default:="User", Type:=2)
MyPass = Application.InputBox("Por favor entre com a senha", "Empresa", Default:="Password", Type:=2)
Set ie = New InternetExplorer
ie.Visible = True
ie.Navigate "http://url"
Do Until ie.ReadyState = READYSTATE_COMPLETE
Loop
ie.Document.all("cuser").innerText = MyLogin
ie.Document.all("cpass").innerText = MyPass
ie.Document.getElementById("cent").Value = "BR"
ie.Document.forms(0).submit
Do While ie.Busy
DoEvents
Loop
PN = "D515005-5304"
'JavaScript to create file
ie.Document.parentWindow.execScript ("printPL('" & PN & "','N%2FC','no')")
End Sub
After JavaScript appears that message from SaveAs and needed this option to be "clicked" automatically, or better yet, to be saved in a specific location.
0
1 answers
Dear, I chose to use chrome and found that javascript sends information via url, so I used the following Logic:
Sub teste()
Dim chromePath, PN As String
Dim Linha As Integer
chromePath = """C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"""
Linha = 2
Cells(Linha, "A").Select
Do While ActiveCell <> ""
PN = Cells(Linha, "A").Value
strURL = "http://cdroyal4.cdzodiac.com/cgi-bin/wspd_cgi.sh/WService=wslive/wpt/function.r?funct=print.pl&drawing-no=" & PN & "&prelim=no&rev=N%2FC&filename=" & PN
Shell (chromePath & strURL)
Linha = Linha + 1
Cells(Linha, "A").Select
Loop
MsgBox "Complete", vbInformation, "Empresa"
End Sub
With Chrome the download is done automatically, resulting in the expected result. Thank you to everyone who analyzed.
0
Author: Thiago, 2017-07-26 16:52:05