Вопрос № 178295: Уважаемые эксперты подскажите, открыв Интернет Эксплоер из файла, можно ли при помощи ВБА и как организовать поиск слова на странице и выделить его, или курсор чтобы находился у него, открываю файл по скрипту: Dim IE As Object Set IE = Crea...
Вопрос № 178295:
Уважаемые эксперты подскажите, открыв Интернет Эксплоер из файла, можно ли при помощи ВБА и как организовать поиск слова на странице и выделить его, или курсор чтобы находился у него, открываю файл по скрипту:
Dim IE As Object Set IE = CreateObject("InternetExplorer.Application") IE.Navigate "D:\Рабочая папка\УПК РФ.mht" 'открывает указанный согласно адреса .... и имени ... файл Sleep 1000 'задержка, то есть пауза выражается в миллисекундах, 1000 миллисекунд это
1 секунда Do While IE.ReadyState <> 4 'нужно писать <> 4, потому что это код, который показывает, что ВЭБ страница полностью загружена. Так написано в документации по ReadyState Loop DoEvents IE.Visible = True 'открывает, делает видимым Микрософт Интернет Эксплоер IE.Document.Title = "УПК РФ" 'заголовок WEB страницы, указывется в самом верху страницы apiShowWindow IE.hwnd, SW_MAXIMIZE 'сделать окно IE во весь экран,
для своей работы должна быть добавлена apiShowWindow Lib Set IE = Nothing 'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для нового объекта
Сразу оговорюсь, жто нижеследующий вариант открытия файла: Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE " + "D:\Рабочая папка\УПК РФ.mht", vbNormalFocus меня не устраивает, потому, что при таком открытии в заголовке страницы появляется что угодно, можно ли заголовок страницы
при таком варианте открытия файла изменить, а также можно ли фокус Normal изменить на Maximize???? У меня не получилось. Спасибо
Отвечает Измалков Эдуард Леонидович, 6-й класс :
Здравствуйте, Ципихович Эндрю. Как выяснилось при уточнении вопроса в мини-форуме задача состоит в том, чтобы на html-странице найти ссылку с определенным текстом и перейти по ней. Это можно сделать следующим способом:
Код:
Sub gotoLink() Dim IE As Object Dim iLinks As Variant Const
fURL As String = "D:\Рабочая папка\УПК РФ.mht" ' адрес файла, который необходимо открыть Const fLinkText as String = "Статья 77" ' текст ссылки, по которой нужно перейти Set IE = CreateObject("InternetExplorer.Application") ' создаем новый экземпляр Internet Explorer
IE.navigate fURL 'открывает указанный согласно адреса .... и имени ... файл While IE.ReadyState < READYSTATE_COMPLETE 'это к
од, который показывает, что ВЭБ страница полностью загружена DoEvent Wend IE.TheaterMode = True ' Во весь экран (браузер раскрывается во весь экран, как при FullScreen) а панели инструментов делаются всплывающими, т.е. автоматически прячутся за краями экрана и появляются оттуда при наведении мыши For Each iLinks In IE.Document.links ' просмотр всех внутренних ссылок в документе If InStr(1, iLinks.innerText, fLinkText, vbTextCompare) > 0 Then ' если в тексте ссылки содержится
искомый текст iLinks.click ' перейти по ссылке Exit For End If Next iLinks IE.Document.Title = "УПК РФ" 'заголовок WEB страницы, указывется в самом верху страницы IE.Visible = True 'открывает, делает видимым Internet Explorer Set IE = Nothing 'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для нового объекта End Sub
Ответ отправил: Измалков Эдуард Леонидович, 6-й класс
Ответ отправлен: 14.05.2010, 09:45
Номер ответа: 261377
Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"?
Отправить SMS#thank 261377
на номер 1151 (Россия) |
Еще номера »
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.