Excel IE.ExecWB 17,0未选择全部

Excel IE.ExecWB 17,0未选择全部,excel,vba,internet-explorer,Excel,Vba,Internet Explorer,在我的VBA脚本中,我有以下两行代码,用于选择整个网页并复制其内容 IE.ExecWB 17, 0 '// SelectAll IE.ExecWB 12, 2 '// Copy selection 它在某些网页上工作,但在其他网页上失败。事实证明,有些网页已经突出显示了一个单词。在这种情况下,IE.ExecWB 17,0不会选择全部。它什么也不做,下一行代码只复制那个单词,而不是整个页面 如果我介入并单击页面上的任意位置以取消选择单词,那么代码就可以正常工作 是否仍然可以通过编程方式取消选择单

在我的VBA脚本中,我有以下两行代码,用于选择整个网页并复制其内容

IE.ExecWB 17, 0 '// SelectAll
IE.ExecWB 12, 2 '// Copy selection
它在某些网页上工作,但在其他网页上失败。事实证明,有些网页已经突出显示了一个单词。在这种情况下,IE.ExecWB 17,0不会选择全部。它什么也不做,下一行代码只复制那个单词,而不是整个页面

如果我介入并单击页面上的任意位置以取消选择单词,那么代码就可以正常工作


是否仍然可以通过编程方式取消选择单词?

是,查看早期绑定中ExecWB的常量:

IE.ExecWB OLECMDID_CLEARSELECTION, OLECMDEXECOPT_DODEFAULT
在后期绑定中转换为IE.ExecWB 18,0

要解决第二个问题,您可以执行以下操作:

With IE.document.getElementsByTagName("Body")(0)
    .Click
    .Focus
    .setActive
end with

看看上述方法是否适用。

谢谢。代码成功地取消选择了该单词,但下一行代码再次选择了该单词,而不是整个网页。我不知道为什么它的行为与手动代码不同。这个词在一个输入框中。可能是盒子在对焦或者什么的。因此,当执行select命令时,输入框中的单词被选中,而手动单击网页上的任何位置将焦点从输入框中移除。我不知道。有没有办法使网页聚焦?谢谢,但它没有从单词中删除突出显示。换句话说,在执行IE.Document.getElementsByTagNameBody0.Click之后,该单词仍然突出显示。我尝试使用此链接中的代码进行测试。。。这就是输出。我发现,即使我在网页上选择了任何文本,它也能正常工作。您可以尝试发布可能产生问题的网页的URL。我们将尝试使用它进行测试,并尝试找到解决方案。@joehua我添加了一些其他方法,您可以尝试。看看其中是否有任何方法以…结束,以块结束help@Deepak-谢谢。我以为我已经发布了网址,但现在找不到了。我记性不好。