Save IE file generated by Javascript using VBA

Asked

Viewed 596 times

0

Dear friends, I am using the routine to access a page and download a file, which uses a 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 "Automatically clicked", or better yet, saved in a specific location.

1 answer

0


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.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.