Пакетно открытые URL - PullRequest
0 голосов
/ 08 мая 2019

У меня есть рабочий лист, в котором он содержит список веб-сайтов в столбце J, начиная со строки 3. Я хотел бы иметь макрос, в котором он будет открывать все веб-сайты в разных вкладках в одном и том же окне браузера.У меня есть существующий код ниже.

Sub Test()
    Dim ie          As Object
    Dim c           As Range

    Set ie = CreateObject("InternetExplorer.Application")

    With ie
        .Visible = True

        For Each c In Sheets("Common").Range("J3:J" & Cells(Rows.Count, 1).End(xlUp).Row)
            .Navigate c.Value, CLng(2048)
        Next c
    End With
End Sub

Это работает по большей части.Но каким-то образом открываются вкладки в окне браузера, для которых нет значений.

1 Ответ

1 голос
/ 08 мая 2019

Вы должны указать имя листа впереди, потому что вы неявно отрабатывает активный лист, который подвержен ошибкам. Например.

ThisWorkbook.Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row 

После отладки кажется, что вы нашли неправильный конец строки с помощью xlUp, поэтому используйте xlDown (если вы знаете, что между URL нет пустых ячеек)

Sheets("Common").Range("J3:J" & Sheets("Common").Cells(Rows.Count, 1).End(xlDown).Row)

Если вы хотите использовать chrome, рассмотрите установку selenium basic . Убедитесь, что последний файл ChromeDriver.exe находится в папке selenium, и добавлен справочник VBE> Инструменты> Ссылки> Библиотека типов селена.

...