VBA, нажав кнопку Onclick на веб-странице ", которая содержит функцию проверки" - PullRequest
0 голосов
/ 02 декабря 2018

Я работаю над проектом '' Automation IE '' нужна помощь по этому же вопросу.

Я пытаюсь спулингировать один отчет Excel с веб-сайта, указав дату и время как входные данные, которые я могу датьвведите даты с моим кодом, но я не могу нажать кнопку «Создать».

Ниже приведен исходный код HTML для дат с и по

<input name="ctl00$ContentPlaceHolder1$txt_0" type="text" maxlength="10" id="txt_0" tabindex="1" class="watermarked" width="200px" selectionstart="txt_0" onchange="isDate2(this)" style="width: 200px;Height:20px;" autocomplete="off">

<input name="ctl00$ContentPlaceHolder1$txt_1" type="text" maxlength="10" id="txt_1" tabindex="2" class="watermarked" width="200px" selectionstart="txt_1" onchange="isDate2(this)" style="width: 200px;Height:20px;" autocomplete="off">

Нижеисходный код HTML для кнопки «Экспорт отчета»

<input type="submit" name="ctl00$ContentPlaceHolder1$btnExportXLS" value="Export Report" onclick="if(!Validate()) return false;" id="btnExportXLS" tabindex="3" class="button blue" onmousedown="return isTxtwithfocus(event, this)" style="width:101px;float: none; margin-top: 2px;">

И это код функции

function ValidateForm(src) { 
assignvalue() 
var src1 = document.getElementById("txt" + src); 

if (src1.value != '') { 

if (isDate2(src1.value, "txt_" + src) == false) { 
return false 
} 
return true } 
}

Это мой код VBA-Последние две строки для нажатия кнопки экспорта

Sub User_Wise_Productivity()

Dim From_Date As String
Dim To_Date As String


From_Date = InputBox("Enter report From date in (Ex: DD.MM.yyy)format")
To_Date = InputBox("Enter report To date in (Ex: DD.MM.yyy)format")


Set browser = CreateObject("internetexplorer.application")
browser.Visible = True
browser.navigate ("My URL")


Do
DoEvents
Loop Until browser.readyState = 4


browser.document.getElementById("txtUserName").Value = "Myid"
browser.document.getElementById("txtPassword").Value = “Mypsw”

browser.document.getElementById("selFund").selectedIndex = "21"
browser.document.getElementById("btnSubmit").Click

Do
DoEvents
Loop Until browser.readyState <> 4




browser.navigate ("MY URL Page2")

Do
DoEvents
Loop Until browser.readyState <> 4


Dim reprt As String
reprt = "11"


    With browser
        Set Post = .document.getElementById("ddlrptlist")
       For Each elem In Post.getElementsByTagName("option")
            If elem.Value = reprt Then elem.Selected = True: Exit For
        Next elem

  .document.getElementById("ddlrptlist").FireEvent ("onchange")

    End With

Do
DoEvents
Loop Until browser.readyState <> 4

browser.document.getElementById("txt_0").Value = From_Date
browser.document.getElementById("txt_1").Value = To_Date

Application.Wait (Now + TimeValue("0:00:02"))

browser.document.getElementById("btnExportXLS").Focus
browser.document.getElementById("btnExportXLS").Click


End Sub

Любая помощь с благодарностью.заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...