Как я могу нажать на гипертекст в исходном коде? - PullRequest
0 голосов
/ 06 ноября 2018

Я начал писать эти командные строки, но, похоже, работает правильно ...

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Row = Range("Name").Row And Target.Column = Range("Name").Column Then

        Dim HTMLdoc As HTMLDocument
        Dim downloadLink As HTMLAnchorElement
        Dim i As Long
        Dim ie As New InternetExplorer

        With ie
            .Visible = True
            .navigate "http://www.XXXXXXXXXX" & Range("Name").Value

            While .Busy Or .readyState <> 4
            DoEvents
            Wend
            Set HTMLdoc = .document
        End With

            Dim Elmt As IHTMLElement
            Dim Elm_Children As IHTMLElementCollection

            Elm = HTMLDocument.getElementById("tableList2")
            Elm_Children = Elm.Children
            ElmChildren.FirstChild.Click

        ie.Quit

    End If

End Sub

Исходный код выглядит так:

enter image description here

Основная идея состоит в том, чтобы открыть страницу поиска и получить поисковый запрос, указанный в листе Excel, а затем щелкнуть информацию о первом попадании и окончательном браке на новой странице: вставьте эту информацию в тот же лист, но в разные строки.

Большое спасибо за помощь: -)

1 Ответ

0 голосов
/ 06 ноября 2018

Вы можете попробовать

HTMLDoc.querySelector("#tableList2 .lstw4 a[onclick]").Click

Или даже

HTMLDoc.querySelector("#tableList2 [onclick*='openMainWindow']").Click

Они используют # идентификатор селектора, чтобы получить таблицу, . селектор класса в первом в потомке комбинатора, чтобы получить элемент с классом lstw4 в таблице, оба выше используют селектор атрибута для нацеливания onclick атрибут. Первый просто идет по первому дочернему тегу a с атрибутом onclick и родительскому классу lstw4, второй по onclick, значение которого содержит openMainWindow.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...