Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2018, 13:44   #1
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию Поиск текста в Google Chrome и закрытие вкладок Google Chrome

Добрый день.
Пишу такой макрос для Internet Explorer:
Public lRow As Integer
Код:
Sub Sajt()
'
'
Dim k As String, povid As String
Dim i As Integer, lCol As Integer, lLastrowInSelectedRange As Integer
Dim WebBrowser As Object
Dim hlnk As Hyperlink


Sheets("посилання").Select
Range("A2", Range("A2").End(xlDown)).Select
    On Error Resume Next
    lRow = Selection.Row 'первая строка
    lCol = Selection.Column
    lLastrowInSelectedRange = Selection.Row + Selection.Rows.Count - 1
    kilk = Selection.Rows.Count
    Do While lRow <= lLastrowInSelectedRange
        Cells(lRow, lCol).Select
        Application.Run "PERSONAL.XLS!Giperssulka_IE"
        lRow = lRow + 1
    Loop
    lRow = 0   
End Sub
Sub Giperssulka_IE()
'
'
Dim k As String, povid As String
Dim i As Integer, lCol As Integer
Dim IE As Object
Dim hlnk As Hyperlink, sAnswer As String


    On Error Resume Next

        Set IE = CreateObject("InternetExplorer.Application")

        IE.Navigate Cells(lRow, 3)
        While IE.busy Or (IE.readyState <> 4): DoEvents: Wend
        sAnswer = IE.Document.body.innerText
        If sAnswer Like "*не может отобразить*" Or sAnswer Like "*cannot display*" _
          Or sAnswer Like "*была отменена*" Or sAnswer Like "*canceled*" Then
            Cells(lRow, 4) = "не откывается ссылка"
            IE.Quit
        ElseIf sAnswer Like Cells(lRow, 2) Then
                Cells(lRow, 4) = ""
        Else
            Cells(lRow, 4) = "Измененная редакция"
        End If
        Application.Wait Time:=Now + TimeValue("0:00:07")
        IE.Quit
End Sub
Файл прилагаю.
Нужен макрос для Google Chrome - не знаю как искать нужный текст во вкладке, открытой с помощью Chrome и как закрывать вкладки в Chrome.

Начал писать макрос:
Код:
Sub Giperssulka_Chrome()
'
'
Dim k As String, povid As String
Dim i As Integer, lCol As Integer
Dim IE As Object
Dim hlnk As Hyperlink, sAnswer As String

    On Error Resume Next
        WebUrl = Cells(lRow, 3).Value
        Shell ("C:\Documents and Settings\Yaroslav\Local Settings\Application Data\Google\Chrome\Application\chrome.exe -url " & WebUrl)
        Application.Wait Time:=Now + TimeValue("0:00:04")
' здесь должен идти поиск нужного текста (Like Cells(lRow, 2))
        SendKeys "%{F4}" ' не работает закрытие вкладки в Chrome
End Sub
И еще вопрос: можно ли открывать сайты в хром без их отображения на экране (как в IE)?
Вложения
Тип файла: xls Гіперпосилання.xls (37.5 Кб, 16 просмотров)

Последний раз редактировалось Jaroslav; 16.11.2018 в 13:55.
Jaroslav вне форума Ответить с цитированием
Старый 16.11.2018, 14:08   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Какая конечная цель?
Для автоматизации браузеров намного проще взять Selenium, там есть вебдрайверы для всех браузеров.

Чтобы не отображать есть headless Chrome или PhantomJS.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.11.2018, 14:32   #3
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Alex, цель - проверить нет ли изменений в законодательстве. На компе стоит гугл хром, вот и пишу макрос под него
Jaroslav вне форума Ответить с цитированием
Старый 16.11.2018, 16:59   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Нет простых решений для управления Chrome из VBA
Просто открыть страницу в новой вкладке - легко, одна строка кода
А вот что-то потом сделать со вкладкой, или с содержимым страницы, - это уже никак.
EducatedFool вне форума Ответить с цитированием
Старый 16.11.2018, 17:56   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Jaroslav,
если описывать не способ, которым Вы решили решать свою задачу и зашли в глухой тупик, а задачу, которая перед Вами стоит - то можно получить простой, короткий и точный ответ, а не выслушивать поучения типа этого
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 16.11.2018, 19:29   #6
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Ребята, несколько дней некоректно работал Internet Explorer, вот и решил переписать макрос под хром. Заработал Explorer, поэтому моя задача решена.

Спасибо Всем.
Jaroslav вне форума Ответить с цитированием
Старый 16.11.2018, 22:02   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

слава Microsoft!!! их эксплоер-таки работает
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Google Chrome Crystal Matrix Софт 21 22.05.2015 07:39
Google Chrome sergey731905 Софт 15 18.12.2014 08:35
Веселый Google Chrome O m n i s Софт 6 25.09.2013 14:48
Google Chrome Syltan Операционные системы общие вопросы 1 16.04.2010 08:18
Google Chrome HellMercenariess Софт 1 06.10.2009 15:53