powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Программно проверить доступность сайта через VBA
14 сообщений из 14, страница 1 из 1
Программно проверить доступность сайта через VBA
    #37777806
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открываю сайт через кнопку на форме, хотелось бы сделать проверку доступности сайта. чтото типа Ping. только через VBA?
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37777818
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37777838
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Действительно работает ))) Спасибо...

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
Sub AAASAD()
Dim strFullFileName As String
strFullFileName = "http://hiprog.com/index.php?option=com_content&task=view&id=251661563&Itemid=35"
If WMIPing(strFullFileName) = False Then
MsgBox "Сайт недоступен:" & vbCr & strFullFileName
Else
MsgBox "Сайт доступен:" & vbCr & strFullFileName
End If
End Sub

Function WMIPing(strAdr As String) As Boolean
Dim objPing As Object
Dim objStatus As Object
    Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}"). _
    ExecQuery("select * from Win32_PingStatus where address = '" & strAdr & "'")
    For Each objStatus In objPing
        If IsNull(objStatus.StatusCode) Or objStatus.StatusCode <> 0 Then
            WMIPing = False
        Else
            WMIPing = True
        End If
    Next


End Function
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37777844
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dan-KДействительно работает ))) Спасибо...Спасибо Игорю за ссылку 12470770 , а вот вы бы могли начать с поиска по форуму...
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37777963
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я обыскался в гугле по сочетанию:
проверить доступность сайта VB, VBA
и т.п. Выдается главным образом простые и элегантные способы для VB.NET... Поневоле задумаешься о переходе...
а идея насчет ping - родилась уже в процессе написания топика...
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37778009
R Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dan-K,

http://www.planetaexcel.ru/forum.php?thread_id=24333

посмотрите здесь тоже обсуждали как то, может чего подберете
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37830260
EducatedFool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужто сложно было набрать в Яндексе «Excel VBA ping»...

Тут есть все необходимое:
http://excelvba.ru/category/network/ping
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37834664
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До меня только сейчас дошло что вообще любые запросы по VBA можно предварять слоганом ExcelVBA... а потом уже забивать предмет поиска...))) Очень грамотное название сайта... Тогда уж надо на самом сайте сделать поисковую страничку как в яндексе...)))
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37834692
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dan-K,

А зачем? В гугле можно писать "site:excelvba.ru ping" - будет искать только по сайту. В яндексе тоже есть подобная фича, только не помню, как именно пишется.
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37836403
EducatedFool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dan-Kлюбые запросы по VBA можно предварять слоганом ExcelVBA... а потом уже забивать предмет поиска...)))

не ExcelVBA, а 2 отдельных слова: Excel VBA
Тогда поисковая система будет знать, информация из какой области вас интересует.

PS: Я, когда пишу макросу, все запросы предваряю этими словами.
И почти всегда нахожу ответ очень быстро.
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #37836613
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EducatedFoolне ExcelVBA, а 2 отдельных слова: Excel VBAчеловек имел ввиду именно поиск на сайте excelvba
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #38027399
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сменил тарифный план на более дешевый и ...

Все способы "пингования"- перестали работать... Сайты нормально открываются, а к примеру такой макрос

взятый с сайта: http://excelvba.ru/code/Ping

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Function PingResponseTimeEx(ByVal ComputerName$, Optional ByVal BufferSize As Long = 32) As Long
    ' Выполняет ICMP запрос (ping) до адреса ComputerName пакетами размером BufferSize% байтов
   ' Возвращает время отклика (в миллисекундах), если пинг прошел удачно,
   ' или -1, если ответ на запрос не получен.

    Dim oPingResult As Variant: PingResponseTimeEx = -1: On Error Resume Next
    For Each oPingResult In GetObject("winmgmts://./root/cimv2").ExecQuery _
        ("SELECT * FROM Win32_PingStatus WHERE Address = '" & ComputerName & "' and BufferSize = " & BufferSize)
        If IsObject(oPingResult) Then
            If oPingResult.StatusCode = 0 Then    ' ответ пришёл - возвращаем время отклика
               PingResponseTimeEx = oPingResult.ResponseTime
            Else    ' выводим код ошибки в окно Immediate
               Debug.Print "Ошибка ICMP запроса к адресу " & ComputerName$ & " (размер пакета: " & _
                            BufferSize & "): " & "Код ошибки " & oPingResult.StatusCode
            End If
            ' описания ошибок есть здесь: http://msdn.microsoft.com/ru-ru/library/aa394350(v=VS.85).aspx
           ' например, ошибка 11010 означает "Request Timed Out" - таймаут (по умолчанию он равен 1000 мс)
       End If
    Next
End Function


Sub ПримерИспользованияPingResponseTimeEx()

    ' пингуем Яндекс пакетами размером 99 байтов
   Debug.Print PingResponseTimeEx("ya.ru", 99)    ' возвращает 28 (ping успешный, отклик 28ms)
End Sub



-выдает ошибку-
Ошибка ICMP запроса к адресу ya.ru (размер пакета: 99): Код ошибки 11010

Смотрю код- превышение времени ожидания... но сайты то открываются... и из VBA в том числе...
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #38027415
Фотография Dan-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впрочем ручками получается тоже самое...смотри фото:
...
Рейтинг: 0 / 0
Программно проверить доступность сайта через VBA
    #38027671
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скорее всего, у вас теперь подключение типа Dual(L2TP...), а маршрутизация нормально не настроена...
Проверьте, чтовыдают ipconfig /all и route print . Но лучше вообще создать отдельную тему там
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Программно проверить доступность сайта через VBA
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]