首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用vba导航到已打开的IE窗口?

如何使用vba导航到已打开的IE窗口?
EN

Stack Overflow用户
提问于 2019-03-14 13:53:30
回答 1查看 1K关注 0票数 0

因此,我一直在尝试使用VBA导航到已经打开的IE窗口。我找到了一篇文章,解释了如何做到这一点。然而,我现在的主要问题是我不太熟悉VBA,特别是我的网站,似乎没有文档标题。当我在调试器中检查html代码时,它所包含的全部内容如下:

代码语言:javascript
运行
AI代码解释
复制
<title></title>

我是不是漏掉了什么?有没有其他更容易或更简单的方式来引用这个网站?

代码语言:javascript
运行
AI代码解释
复制
Sub demo()

Dim str_val As Object
marker = 0
Set objShell = CreateObject("Shell.Application")
IE_count = objShell.Windows.Count
For x = 0 To (IE_count - 1)
    On Error Resume Next
    my_url = objShell.Windows(x).document.Location
    my_title = objShell.Windows(x).document.Title

    If my_title Like "XYZ" & "*" Then
        Set IE = objShell.Windows(x)
        marker = 1
        Exit For
    Else
    End If
Next

If marker = 0 Then
 MsgBox ("A matching webpage was NOT found")

Else
    MsgBox ("A matching webpage was found")

    Set str_val = IE.document.getElementById("txtbox1")
    str_val.Value = "demo text"

End If
End Sub

Reference

用于与已打开的特定IE窗口进行交互的VBA代码

EN

回答 1

Stack Overflow用户

发布于 2019-03-14 14:10:25

这是我通常处理上述问题的方式,

代码语言:javascript
运行
AI代码解释
复制
Sub GetURLs()

'   Uses MS HTML Controls
'   and MS Internet Controls

Dim s As SHDocVw.InternetExplorer
Dim sw As SHDocVw.ShellWindows
Dim d As MSHTML.HTMLDocument

Set sw = New SHDocVw.ShellWindows

For Each s In sw
    If TypeName(s) = "IWebBrowser2" And s.Name <> "Windows Explorer" Then
        Debug.Print s.Name, s.LocationURL
        Set d = s.Document
        Debug.Print d.getElementsByTagName("TD")(0).innerhtml
    End If
Next s

Set sw = Nothing
Set s = Nothing

End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55164307

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文