Как нажать на кнопку «Отправить» с сайта - PullRequest
1 голос
/ 07 июля 2019

Я новичок в VBA и столкнулся с этой одной проблемой, когда я не могу использовать код VBA, чтобы автоматически нажимать кнопку "Отправить" с веб-сайта.Я много раз настраивал свой код, но он всегда пропускал строку «e.click».Ниже мой недавний код и изображение элементов веб-сайта.

Надеюсь, что кто-то может пролить немного света здесь.

Set tags = objIE.Document.getElementById("alltab").getElementsByTagName("a")
For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
next

элементы сайта

Ответы [ 2 ]

1 голос
/ 07 июля 2019

Вы можете просто использовать селектор attribute = value для атрибута alt.Красиво и быстро.Вы не хотите зацикливать всю коллекцию, если вам не нужно.Кроме того, в любом цикле вы бы хотели Exit For после того, как нашли, я верю.

objIE.document.querySelector("[alt='Submit a Contract']").click
0 голосов
/ 08 июля 2019

Пожалуйста, проверьте ваш код, по вашему скриншоту кажется, что гиперссылка (html тег) не внутри таблицы alltab.

enter image description here

Пожалуйста, попробуйте найти таблицу по имени класса и измените свой код, добавив свойство ID:

Найти таблицу по свойству ID (добавить свойство ID для второй таблицы):

Set tags = doc.getElementById("table id").getElementsByTagName("a")

For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
Next e

или

Найти таблицу по имени класса:

Set tags = doc.getElementsByClassName("belowDealButtonBox")(0).getElementsByTagName("a")

For Each e In tags
    If e.getAttribute("alt") = "Submit a Contract" Then
        e.Click
    End If
Next e
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...