2012-07-16 45 views
1

编辑VBA Inet1 GetChunk函数

我想调用inet1.GetChunk来呈现一个变量名下的文档的整个HTML。但是,我遇到了问题。我已为我下面的代码:

Sub File_Names() 

Dim myURL 

ActiveSheet.Range("a1").End(xlDown).Select 
lastColumn = Selection.Row 

For columnNumber = 2 To lastColumn 
    workbench = Cells(columnNumber, 1).Value 
    myURL = "my_web_page"&workbench 
    Dim inet1 As Inet 


Set inet1 = New Inet 
With inet1 
    .Protocol = icHTTP 
    .URL = myURL 
    .Execute , "Get" 
End With 

While inet1.StillExecuting 
    DoEvents 
Wend 

mypage = inet1.GetChunk(1024, icString) 


Do While Len(ReturnStr) <> 0 
    DoEvents 
    mypage = mypage & ReturnStr 
    Cells(2, 10).Value = mypage 
    ReturnStr = myURL.GetChunk(1024, icString) 
Loop 


CAMnum = InStr(mypage, "Component Accessory Matrix") 
intStart = InStrRev(mypage, "pkid=", CAMnum) + 5 
newnum = Mid(mypage, intStart, 6) 
Cells(columnNumber, 2).Value = newnum 

Next columnNumber 


End Sub 

我得到的问题是mypage = inet1.GetChunk(1024,icString)。它说“运行时错误24:对象需要”。我不知道为什么我会收到此错误消息。有什么建议么?

+0

仅供参考:http://stackoverflow.com/q/11437911/190829 – JimmyPena 2012-07-16 17:23:45

回答

0

.OpenURL是同步的;它会打开URL然后阻塞,直到它被完全加载到mypage变量中,所以内容已经“在一个变量名下”。

如果需要异步读取,则需要使用.Execute方法& _StateChanged事件。 (Using the State Event with the GetChunk Method

+0

亚历克斯,你可以检查编辑?我仍然遇到问题。 – sresht 2012-07-25 20:06:57