1.下面这个代码老说“要求对象”,不知道怎么回事,已经加了webbrwoser(Microsoft Internet Controls).按说“要求对象”一般就是表示有控件部件没加上吧?不知道是不是里面有什么脚本的什么东西没加上?
调试报错:“要求对象”. “Set ie = Wscript.CreateObject("InternetExplorer.Application")”这一句变黄色显示。我不会这个,看人家这样照写的。
---------
Private Sub Command1_Click()
Set ie = Wscript.CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.Navigate "http://xiaonei.com/"
Do
Wscript.Sleep 200
Loop Until ie.ReadyState = 4
ie.Document.getElementById("email").Value = "[email protected]"
ie.Document.getElementById("password").Value = "1111111"
ie.Document.getElementById("login").Click
End Sub
-----------2.下面这段代码,老说我: 实时错误'91':对象变量或者with块未设置?
不知道是我的vb版本有问题,或者是不是必须要机器联网的时候调试才行。
有几次我联网的时候调试可以用,但是如果在不联网情况下调试就会报错,而且报错以后再拿到联网的机器上用那就也会报错,也就是说不能有报错的历史,一旦有这个历史就会永远报错。生成的exe文件也不能用。
For i = 0 To vDoc.All.length - 1 这一句,调试时变黄色
-------------------------------
Private Sub Command15_Click()
WebBrowser3.Navigate "http://www.163pan.com"
End Sub
Private Sub WebBrowser3_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim vDoc, vTag
Dim i As Integer
Set vDoc = WebBrowser3.Document
List3.Clear
For i = 0 To vDoc.All.length - 1 '就是这一句,调试时变黄色显示
If UCase(vDoc.All(i).tagName) = "INPUT" Then
Set vTag = vDoc.All(i)
If vTag.Type = "text" Or vTag.Type = "password" Then
List3.AddItem vTag.Name
Select Case vTag.Name
Case "email"
vTag.Value = "[email protected]"
Case "password"
vTag.Value = "11111111111111111"
End Select
ElseIf vTag.Type = "submit" Then
vTag.Click
End If
End If
Next i
End Sub
------------多谢!!
调试报错:“要求对象”. “Set ie = Wscript.CreateObject("InternetExplorer.Application")”这一句变黄色显示。我不会这个,看人家这样照写的。
---------
Private Sub Command1_Click()
Set ie = Wscript.CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.Navigate "http://xiaonei.com/"
Do
Wscript.Sleep 200
Loop Until ie.ReadyState = 4
ie.Document.getElementById("email").Value = "[email protected]"
ie.Document.getElementById("password").Value = "1111111"
ie.Document.getElementById("login").Click
End Sub
-----------2.下面这段代码,老说我: 实时错误'91':对象变量或者with块未设置?
不知道是我的vb版本有问题,或者是不是必须要机器联网的时候调试才行。
有几次我联网的时候调试可以用,但是如果在不联网情况下调试就会报错,而且报错以后再拿到联网的机器上用那就也会报错,也就是说不能有报错的历史,一旦有这个历史就会永远报错。生成的exe文件也不能用。
For i = 0 To vDoc.All.length - 1 这一句,调试时变黄色
-------------------------------
Private Sub Command15_Click()
WebBrowser3.Navigate "http://www.163pan.com"
End Sub
Private Sub WebBrowser3_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim vDoc, vTag
Dim i As Integer
Set vDoc = WebBrowser3.Document
List3.Clear
For i = 0 To vDoc.All.length - 1 '就是这一句,调试时变黄色显示
If UCase(vDoc.All(i).tagName) = "INPUT" Then
Set vTag = vDoc.All(i)
If vTag.Type = "text" Or vTag.Type = "password" Then
List3.AddItem vTag.Name
Select Case vTag.Name
Case "email"
vTag.Value = "[email protected]"
Case "password"
vTag.Value = "11111111111111111"
End Select
ElseIf vTag.Type = "submit" Then
vTag.Click
End If
End If
Next i
End Sub
------------多谢!!
dim ie as object2.要等待文档全部载入才可以使用在整个document_complete里面加个if判断
If pDisp Is WebBrowser1.Object
谢谢!我试了下,它又说我“ie.Document.getElementById("userName").Value = "11111111111111" ”这一句"对象变量或者with块未设置"。我完整的代码是(另:删去了Wscript.Sleep 200这一句):
-------------------
Private Sub Command1_Click()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")ie.Visible = True
ie.Navigate "http://xiaonei.com/"
DoLoop Until ie.ReadyState = 4
ie.Document.getElementById("email").Value = "[email protected]"
ie.Document.getElementById("password").Value = "1111111"
ie.Document.getElementById("login").Click
End Sub
-------------------------不知道怎么回事?
我看它后台实际上已经给我成功登陆了网站,就是老报错,不知道怎么回事?
谢谢!
要么算了,反正它已经能给我登进去了,不知道怎么回事。谢谢!
1.document对象未下载完毕,适当加点延时看看,或者在document_complete事件中用If pDisp Is WebBrowser1.Object判断
2.操作的对象错误,如果你要操作的document放在frame中,你直接用ie.document肯定不行的