继续“Class不支持自动化(错误430) - IE Automation VBA Excel

时间:2017-09-26 23:22:54

标签: excel-vba vba excel

我有低中VBA技能,主要是在单个文档中编写Subs,移动项目并创建大量条件。我只调用了一次Outlook.Application并创建了一个代码,该代码使用Shell为任何用户查找“我的文档”的位置。

我正在构建一个填充网络表单并从IE中获取表格数据并将其重新插入电子表格的子程序。我在下面使用的所有示例都可以很好地导航到页面,但是当我尝试填写表单时,我似乎总是遇到“类不支持自动化(错误430)”错误。

我在多个网站上尝试了以下所有不同的代码,但我总是遇到同样的错误。

Sub TEST4()


Dim HTMLDoc As MSHTML.HTMLDocument
Dim HTMALInput As MSHTML.HTMLElementCollection
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")

ie.Visible = True
ie.navigate "https://en.wikipedia.org/wiki/Main_Page"

Do While ie.readyState <> READYSTATE_COMPLETE
Loop

Debug.Print ie.LocationName, ie.LocationURL

ie.document.forms("searchinput").elements("search").Value = "Document Object model" 'hit a 430 error

End Sub
Dim HTMLDoc As HTMLDocument
Dim MyBrowser As InternetExplorer
 Sub MyGmail()

 Dim MyHTML_Element As IHTMLElement
 Dim MyURL As String
 On Error GoTo Err_Clear
 MyURL = "www.gmail.com"
 Set MyBrowser = New InternetExplorer
 MyBrowser.Silent = True
 MyBrowser.navigate MyURL
 MyBrowser.Visible = True
 Do
 Loop Until MyBrowser.readyState = READYSTATE_COMPLETE
 Set HTMLDoc = MyBrowser.document
 HTMLDoc.all.quickSearchForm.Value = "Test@gmail.com" 'Enter your email id here
 HTMLDoc.all.passwd.Value = "abc+123" 'Enter your password here
 For Each MyHTML_Element In HTMLDoc.getElementsByid("quickSearchForm")
 If MyHTML_Element.Type = "submit" Then MyHTML_Element.Click: Exit For
 Next
Err_Clear:
 If Err <> 0 Then
 Err.Clear
 Resume Next
 End If
 End Sub

还有更多示例,但据我所知,这些是培训文档中引用的基本示例。

另一个快速问题: 使用工作代码,我应该在最后清除我的“昏暗”

Dim MyHTML_Element As Null
Dim MyURL As Null

0 个答案:

没有答案