Поиск окна Internet Explorer с открытой ссылкой

Функция перебирает все открытые окна браузера Internet Explorer, и ищет среди них окно по заданной ссылке (или по части ссылки)

Function GetRunningIE(ByVal URL$, Optional ActivateWindow As Boolean = True) As SHDocVw.InternetExplorer
    ' подключается к браузеру IE, в котором открыта вкладка со страницей URL$
    On Error Resume Next
    Dim w As WebBrowser, oShellWind As New ShellWindows
 
    For Each w In oShellWind
        Debug.Print w.LocationURL
        If w.LocationURL Like URL$ Then
            'If ActivateWindow Then
            '    ShowWindow w.Hwnd, 5
            '    SetForegroundWindow w.Hwnd
            'End If
            Set GetRunningIE = w
            Debug.Print "Подключение выполнено к IE со ссылкой", w.LocationURL
            Exit For
        End If
    Next
    Set oShellWind = Nothing
End Function

ВНИМАНИЕ: для работы этого кода, в Tools — References нужно подключить ссылку на библиотеку Microsoft Internet Controls

Пример использования

Sub test_IE()
    Dim IE As SHDocVw.InternetExplorer, URL$
 
    URL$ = "*excelvba.ru*"
    Set IE = GetRunningIE(URL$)
 
    If IE Is Nothing Then
        Debug.Print "Вкладка не найдена"
    Else
        MsgBox IE.Document.DocumentElement.outerHTML, vbInformation, "Исходный код страницы"
    End If
End Sub

Комментарии

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Игорь, прошу прощения. Всё работает. Просто комп, скорей всего глюканул. После перезагрузки компа, все встало на свои места. Прошу удалить мои комментарии, как ошибочные.
С уважением, Мультипликатор.

Показывает адреса открытых папок Проводника, на одну меньше, чем реально открыто, а ИнтернетЭксплорер открытый не нашел...
Так что не работает...

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
 __  __        _   _  __             
\ \/ / ___ (_) | |/ / _ __ ___
\ / / __| | | | ' / | '__| / __|
/ \ \__ \ | | | . \ | | \__ \
/_/\_\ |___/ |_| |_|\_\ |_| |___/
Введите код, изображенный в стиле ASCII-арт.

Не получается применить макрос? Не удаётся изменить код под свои нужды?

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