我刚刚开始在IE中使用vba自动化,目前我正在尝试制定一个例程,让我的工作变得更轻松。为此,我必须每天早上完成一个网站。到目前为止,我设法登录该网站并单击一些按钮,当我需要选择一个选项卡时我卡住了;有3个选项卡,其中一个自动选中,第三个实际上,我需要选择第二个(Inserimento Giustificativi):
接下来,我将为您提供选项卡的代码:
<div id="TabContainer1_header" class="ajax__tab_header">
<span id="TabContainer1_TabPanel3_tab" class="">
<span class="ajax__tab_outer">
<span class="ajax__tab_inner">
<span id="__tab_TabContainer1_TabPanel3" class="ajax__tab_tab">Console Operativa</span>
</span>
</span>
</span>
<span id="TabContainer1_TabPanel1_tab" class="">
<span class="ajax__tab_outer">
<span class="ajax__tab_inner">
<span id="__tab_TabContainer1_TabPanel1" class="ajax__tab_tab">Inserimento Giustificativi</span>
</span>
</span>
</span>
<span id="TabContainer1_TabPanel2_tab" class="ajax__tab_active">
<span class="ajax__tab_outer">
<span class="ajax__tab_inner">
<span id="__tab_TabContainer1_TabPanel2" class="ajax__tab_tab">Giustificativi Generici</span>
</span>
</span>
</span>
</div>
这是我到目前为止所做的代码(非常基本的):
Sub SearchBot()
Dim objIE As InternetExplorer
Dim ele As Object
Set objIE = Nothing
Set objIE = New InternetExplorer
objIE.Visible = True
objIE.navigate "sia.comdata.it/opera"
Application.Wait (Now + TimeValue("00:00:05"))
objIE.document.getElementById("UserName").Value = "username"
objIE.document.getElementById("Password").Value = "$password"
objIE.document.getElementById("LoginButton").Click
Application.Wait (Now + TimeValue("00:00:05"))
objIE.document.getElementById("palla").Click
Application.Wait (Now + TimeValue("00:00:02"))
objIE.document.getElementById("content_GestioneOperativo").getElementsByTagName("a")(2).Click
Application.Wait (Now + TimeValue("00:00:30"))
End Sub
我尝试了上面的所有方法,并且已经在互联网上搜索了一周的解决方案,但没有,我一直得到错误运行时错误91或者不支持该操作。
另外我注意到当手动单击其中一个选项卡时,ClassName“ajax__tab_active”会将自身移动到我选择的标记的类中,并且填充了“ajax__tab_active”的ClassName仍为空白我不知道是否有帮助,只是我发现它很奇怪。
任何提示都会有所帮助,因为我是一个初学者,我真的不知道还有什么可以尝试,因为我在这里写作,
谢谢。
*我正在编辑我的问题,因为我做了很多尝试,我注意到我无法访问部分源代码。在源代码的某个时刻,有一个名为iframe的标签,在#document之后,似乎我无法以任何方式访问#document下的任何内容,谷歌搜索它我知道它是一个嵌入在源代码中的虚拟文档代码,但我仍然不知道如何访问它:
这就是源代码的外观和选择的行是我需要得到的,
谢谢。
答案 0 :(得分:0)
我设法解决了这个问题。 为了能够访问#document下的数据,似乎所有我必须做的就是登录,然后导航到网站上面的一行,即:https://sia.comdata.it/opera/GestioneOperativo/Giustificativi.aspx,之后一切顺利。 希望这能帮助那些遇到同样问题的人,或者至少知道在他的情况下该怎么做,
谢谢。