0

我试图了解它是如何objIE.Document.body.innertext工作的。从我读过的内容来看,它几乎就像CTRL+C,但是,我试图让它工作并且缺少一些东西。这是代码:

Dim objIE
Dim strPrintText

Set objIE = CreateObject("InternetExplorer.Application")

objIE.Navigate "www.bing.com"
strPrintText = objIE.Document.body.innertext

msgbox(strPrintText)
4

1 回答 1

1

您必须等到浏览器准备好(并且在调用 Sub 时不要使用 param list()):

Dim objIE
Dim strPrintText

Set objIE = CreateObject("InternetExplorer.Application")

objIE.Navigate "www.bing.com"

Do Until objIE.readyState = 4 : Wscript.Sleep 10 : Loop

strPrintText = objIE.Document.body.innertext

msgbox strPrintText

请参阅此作为背景

Sub调用中的WRT参数列表():

>> MsgBox "No param () when calling a Sub!", vbOkOnly
>>
>> MsgBox("No param () when calling a Sub!", vbOkOnly)
>>
Error Number:       1044
Error Description:  Cannot use parentheses when calling a Sub
>>
>> MsgBox "Do you believe me now?", vbOkOnly

对于理论/原因参见this;并在讨论编程规则时反思“它有效”的优点(或道德:只要你没有被抓到,偷东西就可以了)。

于 2013-10-01T13:43:32.620 回答