VBA-单击IE中看起来不是按钮的按钮

VBA-单击IE中看起来不是按钮的按钮,vba,internet-explorer,button,search,onclick,Vba,Internet Explorer,Button,Search,Onclick,我正在尝试运行一个vba代码,该代码: 1-访问站点() 2-输入一些信息 3-点击一个按钮“Consultar”(问题就在这里) 问题描述:我不能点击按钮(我想这不是一个按钮,但我真的不知道) 在我当前的代码中,我使用: ```Set frm = IE.Document.GetElementsByclass("btn-padrao blue borderEffect2 mt-3 hoverEffect wider3") frm.submit``` 我建议尝试循环页面上的

我正在尝试运行一个vba代码,该代码: 1-访问站点() 2-输入一些信息 3-点击一个按钮“Consultar”(问题就在这里)

问题描述:我不能点击按钮(我想这不是一个按钮,但我真的不知道)

在我当前的代码中,我使用:

```Set frm = IE.Document.GetElementsByclass("btn-padrao blue borderEffect2 mt-3 hoverEffect wider3")
frm.submit```

我建议尝试循环页面上的
input
元素并检查其值。如果该值为CONSULTAR,则尝试单击它

VBA代码示例:

Sub demo()

    Dim IE  
    Set IE = CreateObject("InternetExplorer.Application")
    IE.Visible = True
    IE.navigate "https://Your_URL_will_be_here..."

    Do While IE.Busy
        Application.Wait DateAdd("s", 1, Now)
    Loop
     
   Set clickEvent = IE.document.createEvent("HTMLEvents")
   clickEvent.initEvent "click", True, False
   
   Set elem1 = IE.document.getElementById("AbrangenciaNacional")
   elem1.Click
   elem1.dispatchEvent clickEvent
   
   IE.document.getElementById("TipoDocumento").Value = "2"
   
   IE.document.getElementById("Documento").Value = "12345"

   'Below is code to loop through inputs, find the button and click it.
    Set elems = IE.document.getElementsByTagName("input")
    For Each elem In elems
        If (elem.Value) = "CONSULTAR" Then
            elem.Click
            elem.dispatchEvent clickEvent
            Exit For
        End If
    Next elem

End Sub 
输出:

您可以看到代码正在单击CONSULTAR按钮,页面显示错误,因为文档编号无效


您可以尝试传递正确的值,并尝试在您这边测试此代码。

向我们展示您尝试单击按钮时使用的代码可能是个好主意。我们很难猜到这个问题,否则(你的问题很可能会结束)事实上,代码是完美的。我对我需要的做了一些修改(添加一个循环来搜索一批“cnpj”并收集它的结果:D非常感谢!