从VBA(Excel)如何在HTML / Javascript页面中单击此按钮?

时间:2013-11-19 17:59:08

标签: html vba

我多年来一直在这个。很多关于这里的建议似乎很接近,但我无法让它们发挥作用。

我可以打开页面,登录,填写各个框(这是过滤过程的全部内容)

然后我只需要点击“开始”按钮开始搜索。

我尝试了'焦点'和'点击'等的变体

我认为这个问题实际上是关注并点击的正确元素。

需要按下的按钮的HTML代码是

<td class="XUIPromptEntry"><span class="minibuttonOn"><a href="javascript:void(null)" onclick="javascript:GFPDoFilters('d:dashboard~p:nsv29jv8c3s9l61e~s:o426k5n3d5ajovme~g:49ftldfknmmr1fg5',document.getElementById('saw_6428_5'),true);return false;">Go</a></span><div id="d:dashboard~p:nsv29jv8c3s9l61e~s:o426k5n3d5ajovme~g:49ftldfknmmr1fg5Scope" value="page"/></td>

我可以得到一个提示,我应该用什么代码来点击它。

请帮忙!我必须每周六和周日登录才能通过Excel运行此报告,我希望我的周末回来!

按照下面的要求,这是我迄今为止尝试过的代码(已在其他宏中使用过)

                Set htmlDoc = .document
            Set htmlColl = htmlDoc.getElementsByTagName("input")
            Do While htmlDoc.READYSTATE <> "complete": DoEvents: Loop
                For Each htmlInput In htmlColl
                    If Trim(htmlInput.Type) = "submit" Then
                        htmlInput.Click
                        Exit For
                    End If
                Next htmlInput
            End With

我还尝试了其他一些方法,包括......

    Set link = Nothing
i = 0
While i < htmlDoc.Links.Length And link Is Nothing
    If htmlDoc.Links(i).innerText = "Go" Then Set link = htmlDoc.Links(i)
    i = i + 1
Wend
If Not link Is Nothing Then
    link.Focus
    link.Click
End If

但仍然没有快乐(link.focus不起作用,因为它说它看不见)

1 个答案:

答案 0 :(得分:0)

(在问题编辑中由OP回答。转换为社区维基答案。请参阅Question with no answers, but issue solved in the comments (or extended in chat)

OP写道:

  

<强>解决!!!

     

我使用了Innertext&#39;得到它 - 我遇到的问题是,一旦找到它并尝试点击它,它退出循环。但它出现了3次,因此删除了&#39;退出它发现了一个真正起作用的那个。