很简单,获取它就可以了,不是通过句柄等操作方法,应该是COM?
以下在模块
'首先在工程中加入对Microsoft Internet Controls的引用
'指定浏览器对象的Document
Public mDocument As Object
'参数为网页标题
Public Sub mComGetIEWindows(ByVal IETitle As String)
'浏览器对象集合(包含IE也包含资源管理器)
Dim mShellWindow As New SHDocVw.ShellWindows
'循环变量
Dim mIndex As Long
'从第一个浏览器对象循环到最后一个
For mIndex = 0 To mShellWindow.Count - 1
If VBA.TypeName(mShellWindow.Item(mIndex).Document) = "HTMLDocument" Then '如果是IE窗口而不是资源管理器
If mShellWindow.Item(mIndex).Document.Title = IETitle Then '如果是指定窗口(用窗口标题判断的,其他也可以,例如URL)
Set mDocument = mShellWindow.Item(mIndex).Document '锁定我们要的浏览器对象
Exit Sub
End If
End If
Next mIndex
End Sub
以下在窗体
Option Explicit
'首先在工程中加入对Microsoft Internet Controls的引用
'首先请打开以下地址:
'http://bbs.163.com
'观看页面,有一个输入框里面有字符,我们的目的就是获取其内容
'查看网页源文件,注意以下这行,其中name="so_title"是我们引用该文本框要用的
'<input name="so_title" type="text" value="输入文章标题" size=" " class="s2">
Private Sub Command2_Click()
'获取标题为网易论坛的IE对象
mComGetIEWindows "网易论坛"
'如果存在该窗口,那么显示其中name属性为so_title的页面对象的内容
If mDocument Is Nothing Then MsgBox "未打开http://bbs.163.com" Else Print mDocument.body.All("so_title").Value
End Sub
结束~~
这样无论是在自己程序中用WB控件还是已经打开的IE窗口,我们同样可以进行相关操作了.具体操作参考本系列第1,2两篇