vba - 用于登录并单击一个按钮/链接的 VBA 代码
标签
问题描述
我对 VBA 非常陌生,并且一直在观看大量荒谬的 youtube 视频(特别是明智的猫头鹰教程),并在这里搜索以尝试找到我的问题的答案。我正在编写代码来自动化我的部分工作。我有登录网站的代码,因为我使用机密文档,所以我不能分享,但我会分享我能分享的。这是到目前为止的代码......
Sub Login_and_click_link()
Dim IE As New SHDocVw.InternetExplorer
Dim HTMLDoc As MSHTML.HTMLDocument
Dim HTMLInput As MSHTML.IHTMLElement
Dim HTMLDiv As MSHTML.IHTMLElement
Dim HTMLAs As MSHTML.IHTMLElementCollection
Dim HTMLA As MSHTML.IHTMLAnchorElement
'Open Internet Explorer and Navigate to PDDA
With IE
.Visible = True
.Navigate "http://.TheWebsiteINeed.com"
End With
'Loop until PDDA page has fully loaded
Do While IE.ReadyState <> READYSTATE_COMPLETE
Loop
'Search DOM for element by ID and input username
Set HTMLDoc = IE.Document
Set HTMLInput = HTMLDoc.getElementById("userName")
HTMLInput.Value = Worksheets("sheet1").Range("letternumber").Text
'Search DOM for an element by ID and input password
Set HTMLInput = HTMLDoc.getElementById("Password")
HTMLInput.Value = Worksheets("sheet1").Range("letternumber").Text
'Search DOM for element by ID and click submit
Set HTMLInput = HTMLDoc.getElementById("submit")
HTMLInput.Click
'Navigate to the tab I need
??????
End Sub
页面上有两个链接,每个链接都会将我带到下一个我需要的页面。因此,无论哪个更容易为您编写代码都可以使用。
顶部的链接是这样的(在 tr 标签内):
<span> class="topNavoff" style="cursor: hand;" onmouseover="window.status='Process
Management';this.className='topNavon';"
onmouseout="window.status='';this.className='topNavoff';"
onclick="setTask('pmMain');">Process</span>
底部的链接是这样的(在 ap 标签内):
<span> class="contentSubtitleLink" id="process" style="cursor: hand;"
onmouseover="window.status='Process Management';" onmouseout="window.status='';"
onclick="setTask('pmMain');">Process</span>
让我知道是否有任何我可以发送的内容来帮助更清楚地说明这一点。任何帮助将不胜感激!
解决方案
推荐阅读
- vb.net - 带有 Datagridview 的 VB.Net WinForms。更新不适用于多个基础表
- nginx - 将 URL /blog/content/images/**/* 重写为 /content/images/**/*
- reactjs - 如何解决 Gatsby (react JS) 中的逻辑语句?
- printing - 抑制 Julia 中自定义结构的打印
- android - 使用 getSegment 逐步绘制路径
- javascript - 从文本区域中删除多行
- c# - API 连接 - 将 C# 示例迁移到 PHP (Wordpress)
- go - 如何将科学记数法字符串转换为 big.Int?
- sql - 左连接生成的重复项
- node.js - 如何通过公共 ip 公开访问 nodejs 服务器