无法使用VBA访问HTML内部的表单

时间:2013-06-03 13:30:16

标签: html vba

Set resultClasses = IeUsps.document.getElementsByTagName("FRAME") 
    For Each resultClass In resultClasses 
        MsgBox resultClass.Name 
    Set resultClasses1 = IeUsps.document.getElementsByTagName("form")           
         For Each resultClass1 In resultClasses1     
            MsgBox resultClass1.Name    
        Next resultClass1        
 Next resultClass

我有上面的代码,当我运行上面的代码时,我能够看到所有帧的名称,但不能看到每个帧内的表单。 我必须访问,在所需的表单内部框架,在一些输入标签内。请帮忙。

2 个答案:

答案 0 :(得分:1)

未测试:

Sub Tester()

    Dim resultClasses, resultClass, resultClasses1, resultClass1

    Set resultClasses = IeUsps.document.getElementsByTagName("FRAME")
    For Each resultClass In resultClasses
        MsgBox resultClass.Name
        Set resultClasses1 = resultClass.document.getElementsByTagName("form")
        For Each resultClass1 In resultClasses1
            MsgBox resultClass1.Name
        Next resultClass1
    Next resultClass
End Sub

答案 1 :(得分:0)

前一段时间我遇到了同样的问题。如果要在按下按钮后访问框架中的数据,则应等待页面加载。按下按钮后,只需在代码中添加以下内容:

    Dim Bongeszo As InternetExplorer
    Do
    Application.Wait DateAdd("s", 0.1, Now)
    Loop Until Bongeszo.document.readyState = "complete"

等待页面加载后,我可以访问框架内的所有信息。如果它对您有所帮助,请告诉我们。