2017-06-02 102 views
0

我试图自动化一些登录并将粘贴从网络复制到我自己的机器上。当我从公司内部网上尝试同样的事情时,我会面临问题。我的错误消息是:使用Excel的Web自动化VBA

对象变量或未设置块变量。

这是我的代码:

Sub getdata() 
Dim IE As Object 
Dim Doc As HTMLDocument 
Dim naziv, test, test2 As Variant 

'Set IE = CreateObject("InternetExplorer.Application") 
Set IE = New InternetExplorerMedium 

IE.Visible = True 

IE.navigate "https://example.com/Pages/default.aspx" 

Do While IE.readyState = 4 
DoEvents 
Loop 

Set test = Doc 
Set test2 = Doc 

test2 = test.getElementById("testid") 

MsgBox (test2.innerText) 

End Sub 
+0

您尚未初始化您的Doc变量。 –

回答

3

除去以下两行

Set test = Doc 
Set test2 = Doc 

设置doc变量第一

Set Doc = IE.document 

,然后设置TEST2对象

set test2 = Doc.getElementById("testid") 
+4

' - >'Set test2 = Doc.getElementById(“testid”)':) –

+0

@SiddharthRout感谢您的纠正。我忘了补充一点。 :) – sktneer

+1

++无后顾之忧,我也有时想念小事情:) –