vba宏-如何使我的宏继续执行相同的操作,直到Excel表完成?

时间:2018-06-23 11:09:39

标签: excel vba excel-vba

我正在编写一个宏来自动执行每天必须执行的无聊任务。 我在excel中有一张表格,其中包含代理商名称,质量审核者名称,得分,案例编号和日期,我需要在Salesforce中输入所有这些信息,然后按提交按钮。 每个案例都位于第二行到第100行的下一行

我的代码工作正常,所有字段都已填充,并且单击提交和新按钮也很好(我确认它可以正常工作,因为我在salesforce数据库中看到了结果)。但是,在完成A2行并提交之后,页面将重新加载,并且没有填充我的excel表的其余部分。

很遗憾,由于客户端数据保护,我无法共享链接。

在下面的代码中,我要上传两个案例评论,一个来自第1行,另一个来自第2行

Sub Quality_automation()
Dim IE As Object
Dim Crow As Range
Set IE = CreateObject("InternetExplorer.Application")
IE.navigate "https://dummywesiteexample.com"
IE.Visible = True

While IE.Busy
DoEvents
Wend

IE.Document.All("Name").Value = ThisWorkbook.Sheets("Sheet1").Range("f2")
IE.Document.All("CF00NG000000ExJhs").Value = 
ThisWorkbook.Sheets("Sheet1").Range("c2")
IE.Document.All("00NG000000ExJhr").Value = 
ThisWorkbook.Sheets("Sheet1").Range("h2")
IE.Document.All("00NG000000ExJhn").Value = 
ThisWorkbook.Sheets("Sheet1").Range("I2")
Application.SendKeys "{Enter}"
IE.Document.All("00NG000000ExJhp").Checked = True
IE.Document.All("00NG000000ExJhl").Value = 
ThisWorkbook.Sheets("Sheet1").Range("h2")
IE.Document.All("CF00NG000000ExJhm").Value = 
ThisWorkbook.Sheets("Sheet1").Range("d2")
Application.Wait (Now + TimeValue("00:00:01"))
Set objInputs = IE.Document.getElementsByTagName("input")

For Each ele In objInputs
If ele.Title Like "Save & New" Then
    ele.Click
End If
Next
End

Application.Wait (Now + TimeValue("00:00:01"))


IE.Document.All("Name").Value = ThisWorkbook.Sheets("Sheet1").Range("f3")
IE.Document.All("CF00NG000000ExJhs").Value = ThisWorkbook.Sheets("Sheet1").Range("c3")
IE.Document.All("00NG000000ExJhr").Value = ThisWorkbook.Sheets("Sheet1").Range("h3")
IE.Document.All("00NG000000ExJhn").Value = ThisWorkbook.Sheets("Sheet1").Range("I3")
Application.SendKeys "{Enter}"
IE.Document.All("00NG000000ExJhp").Checked = True
IE.Document.All("00NG000000ExJhl").Value = ThisWorkbook.Sheets("Sheet1").Range("h3")
IE.Document.All("CF00NG000000ExJhm").Value = ThisWorkbook.Sheets("Sheet1").Range("d3")
Application.Wait (Now + TimeValue("00:00:01"))
Set objInputs = IE.Document.getElementsByTagName("input")

For Each ele In objInputs
    If ele.Title Like "Save & New" Then
        ele.Click
    End If
    Next
    End
End Sub

如果有任何关于我的问题的问题,请随时在评论中提问。

0 个答案:

没有答案