Private Sub WebBrowser1_Document(ByValpDisp As Object, URL As Variant)
If Not (pDisp Is WebBrowser1.Object) Then Exit Sub 在网上找的判断网页是否完全打开全是以WebBrowser1_Document开头,但是我要的是自动把EXCELL表中的数据一个一个的填写上去,需要循环,并且要中间还要不断进入新的页面,我想能不能找个别的方法进行判断??
If Not (pDisp Is WebBrowser1.Object) Then Exit Sub 在网上找的判断网页是否完全打开全是以WebBrowser1_Document开头,但是我要的是自动把EXCELL表中的数据一个一个的填写上去,需要循环,并且要中间还要不断进入新的页面,我想能不能找个别的方法进行判断??
解决方案 »
- VB程序运行时,怎样在程序界面上操作其它按钮?
- 关于网卡编程。。。。
- 如何用VB作查询,请大侠们给我几个例子好吗?谢了!
- 2000下做的软件,打包安装到98后,ado报错“未找到提供者,或未正确安装”
- 在线求助---怎样打印控件MSChart中的图型?(急!!)
- 用VB如何将粘贴板中的图片存档到硬盘
- 求教用VB写一个电子邮件发送程序!!
- vb PictureBox KeyDown事件怎么写
- DataCombo 和 Adodc 的问题
- 急急急!!关于 VSS 控制 VB 源代码的问题,在线等.
- VB可以用的画 柱状图的 控件 有没有好用的,大家 推荐一下?
- 【MIDI电子琴,添加录音功能的问题~】
....
End Sub把填写数据写在TIMER里面,隔几秒填写一次
WebBrowser1_NavigateComplete4??用TIMER有一个缺点就是网络不稳定时或延时很长时他会出现错误。
由于网络不是很稳定,有时候很长时间他都不能完全打开网页,我只能用“是否完全下载页面”来判断,还请高手再帮下菜鸟.
Dim i As Object
Dim strHtml As String
on error resume next
Set doc = WebBrowser1.Document
For Each i In doc.All
strHtml = strHtml & Chr(13) & i.innertext
Next
getWebContent = strHtml
If InStr(getWebContent, "成功") > 0 Then
'自己的操作
end if
上面的代码 放在一个TINER控件中 没隔一秒检查一次
也可以用进一步在VB中获得body_onload事件进行判断。
具体思路是,增加一个类,在VB里新建一个类,再添加一个公共过程,通过工具菜单的过程属性将此过程设置默认,在DocumentComplete事件中将类绑定到body的onload事件中,具体语句为:set me.webbrowser1.Document.body.onload=new class1。
如果是使用了AJAX,则可以在脚本中自定义一个事件表示全部加载完毕,VB通过上述方法获得这个自定义事件进行判断。
还有个问题,那就是循环怎么写?我是从EXCELL中提取数据,这样写行不?大家给教下吧!我这样写中不?
Private Sub WebBrowser1_Document(ByValpDisp As Object, URL As Variant)
'打开网页1 '再打开EXCELL
FOR i=1 to 300
If Not (pDisp Is WebBrowser1.Object) Then
For I = 1 To objDoc.All.Length - 1
If objDoc.All(I).Name = "username" Then
objDoc.All(I).Value = sh.cells(i,2) ‘填数据与点击
....................end if
'打开网页2
If Not (pDisp Is WebBrowser1.Object) Then
For I = 1 To objDoc.All.Length - 1
If objDoc.All(I).Name = "username1" Then
objDoc.All(I).Value = sh.cells(i,3)
。end if
NEXT可否???
Private Sub Command1_Click()
Dim ex As Object
Dim wb As Object
Dim sh As Object
Dim Doc as object
dim i as integer
Set ex = CreateObject("Excel.Application")
Set wb = ex.Workbooks.Open("c:\1.xls")
Set sh = wb.Sheets(1)
FOR i=2 to 200
Webbrowser1.Navigate "http://192.168.1.2" '打开需要的网页
Do While WebBrowser1.IsBusy
Application.DoEvents() '等待网页完全打开
Set Doc = WebBrowser1.Document
Doc("name").click ‘点一个按钮
Do While WebBrowser1.IsBusy
Application.DoEvents() '再等待网页完全打开
Doc("work")=sh.cells(i,2)
Doc("end").click
next ex.Visible = True
Set ex = Nothing
Set wb = Nothing
Set sh = Nothing
end sub