Пример панели инструментов Привет, ребята, пытаюсь смоделировать щелчок мышью по форме в браузере для загрузки отчета, но не удается. я сразу застрял при нацеливании на ссылку для скачивания / изображение. я также понимаю, что форма использует метод post для извлечения файла, поэтому я не уверен, достаточно ли просто имитации щелчка мышью по ссылке / изображению. Огромное спасибо.
Sub TestDownload()
Dim elements As Object, element As Object, count As Long
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "https://something.com/Dashboard"
' Wait while IE loading...
Do While IE.Busy
Application.Wait DateAdd("s", 1, Now)
Loop
count = 0
Set elements = objIE.document.getElementsByTagName("a")
For Each element In elements
If element.className = "ExportCurrentExtInt" Then
element.Click
End If
Next
End Sub
<form id="myForm" name="myForm" method="post" action="/NSPortal/Dashboards/CEPDashboard">
<input type="hidden" name="ReportDate" id="ReportDate" value="4/1/2020" />
<input type="hidden" name="Domain" id="Domain" value="" />
**<input type="hidden" name="SubmitButton" id="SubmitButton" value="jqGridExportToExcel"> *--> the value appears when i click on the link to initiate the download*
<input type="hidden" name="ExportTarget" id="ExportTarget" value="ExportCurrentExtInt">**
<input type="hidden" name="ExportFilterField" id="ExportFilterField" value="" />
<input type="hidden" name="ExportFilterValue" id="ExportFilterValue" value="" />
<input type="hidden" name="OpenTab" id="OpenTab" value=""/>
<table id='tableDateSelection' border='0' cellpadding='0' cellspacing='0' width='100%' style='border-color: #F5F5F5'>
</select>
<tr>
<td class="RoundedPanelCenterLeft"></td>
<td><a id="ExportCurrentExtInt">Export Current EXT-INT Interfaces <img style="vertical-align:top" alt="Export current EXT-INT Interfaces to Excel" src="/NSPortal/Content/Images/excel.gif" border="0"/></a></td>
<td class="RoundedPanelCenterRight"></td>
</tr>
</form>
Я пытался использовать ID элемента, но он выдает ошибку.
Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
objIE.document.getElementById("ExportTarget").Click
End Sub